.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.GetOrAddDictionary02()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       r9,[rbx+50]
mov       r8,[r9+28]
mov       rdx,[rbx+280]
mov       rcx,offset MD_DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.IDictionary`2>, System.String, DotNetTips.Spargine.Tester.Models.RefTypes.Person`1)
call      qword ptr [7FFF54BA5FC8]; DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IDictionary`2, System.__Canon, System.__Canon)
mov       [rsp+28],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IDictionary`2, System.__Canon, System.__Canon)
		value = value.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		key = key.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		collection = collection.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		if (collection.TryGetValue(key, out var item) is false)
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
			collection.Add(key, value);
			^^^^^^^^^^^^^^^^^^^^^^^^^^^
			item = value;
			^^^^^^^^^^^^^
		return item;
		^^^^^^^^^^^^
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
xor       eax,eax
mov       [rsp+28],rax
mov       [rsp+30],rcx
mov       rdi,rcx
mov       rbx,rdx
mov       rsi,r8
mov       rbp,r9
xor       ecx,ecx
test      rbp,rbp
setne     cl
test      ecx,ecx
je        short M01_L03
xor       ecx,ecx
test      rsi,rsi
setne     cl
test      ecx,ecx
je        near ptr M01_L04
test      rbx,rbx
je        near ptr M01_L05
mov       rcx,[rdi+10]
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L00
jmp       short M01_L01
M01_L00
 
mov       rcx,rdi
mov       rdx,7FFF54B94818
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L01
 
lea       r8,[rsp+28]
mov       rcx,rbx
mov       rdx,rsi
call      qword ptr [r11]
test      eax,eax
je        near ptr M01_L06
M01_L02
 
mov       rax,[rsp+28]
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L03
 
call      qword ptr [7FFF546744C8]
mov       ecx,1D3
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rdi,rax
mov       ecx,1436
mov       rdx,7FFF54476D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rsi,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
call      qword ptr [7FFF546742B8]
mov       r8,rax
mov       rdx,rsi
mov       rcx,rbp
call      qword ptr [7FFF542D6718]
mov       rcx,rbp
call      CORINFO_HELP_THROW
M01_L04
 
call      qword ptr [7FFF546744C8]
mov       ecx,1B3
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54476D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546742B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542D6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L05
 
call      qword ptr [7FFF546744C8]
mov       ecx,43
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54476D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546742B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542D6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L06
 
mov       rcx,[rdi+10]
cmp       qword ptr [rcx+10],38
jle       short M01_L07
mov       r11,[rcx+38]
test      r11,r11
je        short M01_L07
jmp       short M01_L08
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFF54B948B8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L08
 
mov       rcx,rbx
mov       rdx,rsi
mov       r8,rbp
call      qword ptr [r11]
mov       [rsp+28],rbp
jmp       near ptr M01_L02
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.GetOrAddDictionary02()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       r9,[rbx+50]
mov       r8,[r9+28]
mov       rdx,[rbx+280]
mov       rcx,offset MD_DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.IDictionary`2>, System.String, DotNetTips.Spargine.Tester.Models.RefTypes.Person`1)
call      qword ptr [7FFF54BB7C30]; DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IDictionary`2, System.__Canon, System.__Canon)
mov       [rsp+28],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IDictionary`2, System.__Canon, System.__Canon)
		value = value.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		key = key.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		collection = collection.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		if (collection.TryGetValue(key, out var item) is false)
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
			collection.Add(key, value);
			^^^^^^^^^^^^^^^^^^^^^^^^^^^
			item = value;
			^^^^^^^^^^^^^
		return item;
		^^^^^^^^^^^^
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
xor       eax,eax
mov       [rsp+28],rax
mov       [rsp+30],rcx
mov       rdi,rcx
mov       rbx,rdx
mov       rsi,r8
mov       rbp,r9
xor       ecx,ecx
test      rbp,rbp
setne     cl
test      ecx,ecx
je        short M01_L03
xor       ecx,ecx
test      rsi,rsi
setne     cl
test      ecx,ecx
je        near ptr M01_L04
test      rbx,rbx
je        near ptr M01_L05
mov       rcx,[rdi+10]
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L00
jmp       short M01_L01
M01_L00
 
mov       rcx,rdi
mov       rdx,7FFF54BA6710
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L01
 
lea       r8,[rsp+28]
mov       rcx,rbx
mov       rdx,rsi
call      qword ptr [r11]
test      eax,eax
je        near ptr M01_L06
M01_L02
 
mov       rax,[rsp+28]
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L03
 
call      qword ptr [7FFF546844C8]
mov       ecx,1D3
mov       rdx,7FFF545FA408
call      CORINFO_HELP_STRCNS
mov       rdi,rax
mov       ecx,1436
mov       rdx,7FFF54486D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FFF540F6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545FA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540F6B08]; System.String.Concat(System.String, System.String)
mov       rsi,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
call      qword ptr [7FFF546842B8]
mov       r8,rax
mov       rdx,rsi
mov       rcx,rbp
call      qword ptr [7FFF542E6718]
mov       rcx,rbp
call      CORINFO_HELP_THROW
M01_L04
 
call      qword ptr [7FFF546844C8]
mov       ecx,1B3
mov       rdx,7FFF545FA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54486D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540F6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545FA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540F6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546842B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542E6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L05
 
call      qword ptr [7FFF546844C8]
mov       ecx,43
mov       rdx,7FFF545FA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54486D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540F6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545FA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540F6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546842B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542E6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L06
 
mov       rcx,[rdi+10]
cmp       qword ptr [rcx+10],38
jle       short M01_L07
mov       r11,[rcx+38]
test      r11,r11
je        short M01_L07
jmp       short M01_L08
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFF54BA67B0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L08
 
mov       rcx,rbx
mov       rdx,rsi
mov       r8,rbp
call      qword ptr [r11]
mov       [rsp+28],rbp
jmp       near ptr M01_L02
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.GetOrAddDictionary02()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       r9,[rbx+50]
mov       r8,[r9+28]
mov       rdx,[rbx+280]
mov       rcx,offset MD_DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.IDictionary`2>, System.String, DotNetTips.Spargine.Tester.Models.RefTypes.Person`1)
call      qword ptr [7FFF54BA7C30]; DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IDictionary`2, System.__Canon, System.__Canon)
mov       [rsp+28],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IDictionary`2, System.__Canon, System.__Canon)
		value = value.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		key = key.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		collection = collection.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		if (collection.TryGetValue(key, out var item) is false)
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
			collection.Add(key, value);
			^^^^^^^^^^^^^^^^^^^^^^^^^^^
			item = value;
			^^^^^^^^^^^^^
		return item;
		^^^^^^^^^^^^
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
xor       eax,eax
mov       [rsp+28],rax
mov       [rsp+30],rcx
mov       rdi,rcx
mov       rbx,rdx
mov       rsi,r8
mov       rbp,r9
xor       ecx,ecx
test      rbp,rbp
setne     cl
test      ecx,ecx
je        short M01_L03
xor       ecx,ecx
test      rsi,rsi
setne     cl
test      ecx,ecx
je        near ptr M01_L04
test      rbx,rbx
je        near ptr M01_L05
mov       rcx,[rdi+10]
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L00
jmp       short M01_L01
M01_L00
 
mov       rcx,rdi
mov       rdx,7FFF54B96820
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L01
 
lea       r8,[rsp+28]
mov       rcx,rbx
mov       rdx,rsi
call      qword ptr [r11]
test      eax,eax
je        near ptr M01_L06
M01_L02
 
mov       rax,[rsp+28]
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L03
 
call      qword ptr [7FFF546744C8]
mov       ecx,1D3
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rdi,rax
mov       ecx,1436
mov       rdx,7FFF54476D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rsi,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
call      qword ptr [7FFF546742B8]
mov       r8,rax
mov       rdx,rsi
mov       rcx,rbp
call      qword ptr [7FFF542D6718]
mov       rcx,rbp
call      CORINFO_HELP_THROW
M01_L04
 
call      qword ptr [7FFF546744C8]
mov       ecx,1B3
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54476D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546742B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542D6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L05
 
call      qword ptr [7FFF546744C8]
mov       ecx,43
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54476D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546742B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542D6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L06
 
mov       rcx,[rdi+10]
cmp       qword ptr [rcx+10],38
jle       short M01_L07
mov       r11,[rcx+38]
test      r11,r11
je        short M01_L07
jmp       short M01_L08
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFF54B968C0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L08
 
mov       rcx,rbx
mov       rdx,rsi
mov       r8,rbp
call      qword ptr [r11]
mov       [rsp+28],rbp
jmp       near ptr M01_L02
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.GetOrAddDictionary02()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       r9,[rbx+50]
mov       r8,[r9+28]
mov       rdx,[rbx+280]
mov       rcx,offset MD_DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.IDictionary`2>, System.String, DotNetTips.Spargine.Tester.Models.RefTypes.Person`1)
call      qword ptr [7FFF54B87C30]; DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IDictionary`2, System.__Canon, System.__Canon)
mov       [rsp+28],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IDictionary`2, System.__Canon, System.__Canon)
		value = value.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		key = key.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		collection = collection.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		if (collection.TryGetValue(key, out var item) is false)
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
			collection.Add(key, value);
			^^^^^^^^^^^^^^^^^^^^^^^^^^^
			item = value;
			^^^^^^^^^^^^^
		return item;
		^^^^^^^^^^^^
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
xor       eax,eax
mov       [rsp+28],rax
mov       [rsp+30],rcx
mov       rdi,rcx
mov       rbx,rdx
mov       rsi,r8
mov       rbp,r9
xor       ecx,ecx
test      rbp,rbp
setne     cl
test      ecx,ecx
je        short M01_L03
xor       ecx,ecx
test      rsi,rsi
setne     cl
test      ecx,ecx
je        near ptr M01_L04
test      rbx,rbx
je        near ptr M01_L05
mov       rcx,[rdi+10]
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L00
jmp       short M01_L01
M01_L00
 
mov       rcx,rdi
mov       rdx,7FFF54B76710
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L01
 
lea       r8,[rsp+28]
mov       rcx,rbx
mov       rdx,rsi
call      qword ptr [r11]
test      eax,eax
je        near ptr M01_L06
M01_L02
 
mov       rax,[rsp+28]
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L03
 
call      qword ptr [7FFF546544C8]
mov       ecx,1D3
mov       rdx,7FFF545CA408
call      CORINFO_HELP_STRCNS
mov       rdi,rax
mov       ecx,1436
mov       rdx,7FFF54456D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FFF540C6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545CA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540C6B08]; System.String.Concat(System.String, System.String)
mov       rsi,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
call      qword ptr [7FFF546542B8]
mov       r8,rax
mov       rdx,rsi
mov       rcx,rbp
call      qword ptr [7FFF542B6718]
mov       rcx,rbp
call      CORINFO_HELP_THROW
M01_L04
 
call      qword ptr [7FFF546544C8]
mov       ecx,1B3
mov       rdx,7FFF545CA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54456D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540C6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545CA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540C6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546542B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542B6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L05
 
call      qword ptr [7FFF546544C8]
mov       ecx,43
mov       rdx,7FFF545CA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54456D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540C6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545CA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540C6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546542B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542B6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L06
 
mov       rcx,[rdi+10]
cmp       qword ptr [rcx+10],38
jle       short M01_L07
mov       r11,[rcx+38]
test      r11,r11
je        short M01_L07
jmp       short M01_L08
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFF54B767B0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L08
 
mov       rcx,rbx
mov       rdx,rsi
mov       r8,rbp
call      qword ptr [r11]
mov       [rsp+28],rbp
jmp       near ptr M01_L02
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.GetOrAddDictionary02()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       r9,[rbx+50]
mov       r8,[r9+28]
mov       rdx,[rbx+280]
mov       rcx,offset MD_DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.IDictionary`2>, System.String, DotNetTips.Spargine.Tester.Models.RefTypes.Person`1)
call      qword ptr [7FFF54BC7C30]; DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IDictionary`2, System.__Canon, System.__Canon)
mov       [rsp+28],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IDictionary`2, System.__Canon, System.__Canon)
		value = value.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		key = key.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		collection = collection.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		if (collection.TryGetValue(key, out var item) is false)
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
			collection.Add(key, value);
			^^^^^^^^^^^^^^^^^^^^^^^^^^^
			item = value;
			^^^^^^^^^^^^^
		return item;
		^^^^^^^^^^^^
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
xor       eax,eax
mov       [rsp+28],rax
mov       [rsp+30],rcx
mov       rdi,rcx
mov       rbx,rdx
mov       rsi,r8
mov       rbp,r9
xor       ecx,ecx
test      rbp,rbp
setne     cl
test      ecx,ecx
je        short M01_L03
xor       ecx,ecx
test      rsi,rsi
setne     cl
test      ecx,ecx
je        near ptr M01_L04
test      rbx,rbx
je        near ptr M01_L05
mov       rcx,[rdi+10]
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L00
jmp       short M01_L01
M01_L00
 
mov       rcx,rdi
mov       rdx,7FFF54BB6DC0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L01
 
lea       r8,[rsp+28]
mov       rcx,rbx
mov       rdx,rsi
call      qword ptr [r11]
test      eax,eax
je        near ptr M01_L06
M01_L02
 
mov       rax,[rsp+28]
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L03
 
call      qword ptr [7FFF546944C8]
mov       ecx,1D3
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rdi,rax
mov       ecx,1436
mov       rdx,7FFF54496D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rsi,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
call      qword ptr [7FFF546942B8]
mov       r8,rax
mov       rdx,rsi
mov       rcx,rbp
call      qword ptr [7FFF542F6718]
mov       rcx,rbp
call      CORINFO_HELP_THROW
M01_L04
 
call      qword ptr [7FFF546944C8]
mov       ecx,1B3
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54496D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546942B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542F6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L05
 
call      qword ptr [7FFF546944C8]
mov       ecx,43
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54496D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546942B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542F6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L06
 
mov       rcx,[rdi+10]
cmp       qword ptr [rcx+10],38
jle       short M01_L07
mov       r11,[rcx+38]
test      r11,r11
je        short M01_L07
jmp       short M01_L08
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFF54BB6E60
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L08
 
mov       rcx,rbx
mov       rdx,rsi
mov       r8,rbp
call      qword ptr [r11]
mov       [rsp+28],rbp
jmp       near ptr M01_L02
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.GetOrAddDictionary02()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       r9,[rbx+50]
mov       r8,[r9+28]
mov       rdx,[rbx+280]
mov       rcx,offset MD_DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.IDictionary`2>, System.String, DotNetTips.Spargine.Tester.Models.RefTypes.Person`1)
call      qword ptr [7FFF54BBDAB8]; DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IDictionary`2, System.__Canon, System.__Canon)
mov       [rsp+28],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IDictionary`2, System.__Canon, System.__Canon)
		value = value.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		key = key.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		collection = collection.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		if (collection.TryGetValue(key, out var item) is false)
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
			collection.Add(key, value);
			^^^^^^^^^^^^^^^^^^^^^^^^^^^
			item = value;
			^^^^^^^^^^^^^
		return item;
		^^^^^^^^^^^^
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
xor       eax,eax
mov       [rsp+28],rax
mov       [rsp+30],rcx
mov       rdi,rcx
mov       rbx,rdx
mov       rsi,r8
mov       rbp,r9
xor       ecx,ecx
test      rbp,rbp
setne     cl
test      ecx,ecx
je        short M01_L03
xor       ecx,ecx
test      rsi,rsi
setne     cl
test      ecx,ecx
je        near ptr M01_L04
test      rbx,rbx
je        near ptr M01_L05
mov       rcx,[rdi+10]
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L00
jmp       short M01_L01
M01_L00
 
mov       rcx,rdi
mov       rdx,7FFF54BA73D8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L01
 
lea       r8,[rsp+28]
mov       rcx,rbx
mov       rdx,rsi
call      qword ptr [r11]
test      eax,eax
je        near ptr M01_L06
M01_L02
 
mov       rax,[rsp+28]
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L03
 
call      qword ptr [7FFF546744C8]
mov       ecx,1D3
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rdi,rax
mov       ecx,1436
mov       rdx,7FFF54476D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rsi,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
call      qword ptr [7FFF546742B8]
mov       r8,rax
mov       rdx,rsi
mov       rcx,rbp
call      qword ptr [7FFF542D6718]
mov       rcx,rbp
call      CORINFO_HELP_THROW
M01_L04
 
call      qword ptr [7FFF546744C8]
mov       ecx,1B3
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54476D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546742B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542D6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L05
 
call      qword ptr [7FFF546744C8]
mov       ecx,43
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54476D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546742B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542D6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L06
 
mov       rcx,[rdi+10]
cmp       qword ptr [rcx+10],38
jle       short M01_L07
mov       r11,[rcx+38]
test      r11,r11
je        short M01_L07
jmp       short M01_L08
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFF54BA7478
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L08
 
mov       rcx,rbx
mov       rdx,rsi
mov       r8,rbp
call      qword ptr [r11]
mov       [rsp+28],rbp
jmp       near ptr M01_L02
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.GetOrAddDictionary02()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       r9,[rbx+50]
mov       r8,[r9+28]
mov       rdx,[rbx+280]
mov       rcx,offset MD_DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.IDictionary`2>, System.String, DotNetTips.Spargine.Tester.Models.RefTypes.Person`1)
call      qword ptr [7FFF54CA5FC8]; DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IDictionary`2, System.__Canon, System.__Canon)
mov       [rsp+28],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IDictionary`2, System.__Canon, System.__Canon)
		value = value.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		key = key.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		collection = collection.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		if (collection.TryGetValue(key, out var item) is false)
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
			collection.Add(key, value);
			^^^^^^^^^^^^^^^^^^^^^^^^^^^
			item = value;
			^^^^^^^^^^^^^
		return item;
		^^^^^^^^^^^^
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
xor       eax,eax
mov       [rsp+28],rax
mov       [rsp+30],rcx
mov       rdi,rcx
mov       rbx,rdx
mov       rsi,r8
mov       rbp,r9
xor       ecx,ecx
test      rbp,rbp
setne     cl
test      ecx,ecx
je        short M01_L03
xor       ecx,ecx
test      rsi,rsi
setne     cl
test      ecx,ecx
je        near ptr M01_L04
test      rbx,rbx
je        near ptr M01_L05
mov       rcx,[rdi+10]
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L00
jmp       short M01_L01
M01_L00
 
mov       rcx,rdi
mov       rdx,7FFF54CB02B0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L01
 
lea       r8,[rsp+28]
mov       rcx,rbx
mov       rdx,rsi
call      qword ptr [r11]
test      eax,eax
je        near ptr M01_L06
M01_L02
 
mov       rax,[rsp+28]
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L03
 
call      qword ptr [7FFF546744C8]
mov       ecx,1D3
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rdi,rax
mov       ecx,1436
mov       rdx,7FFF54476D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rsi,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
call      qword ptr [7FFF546742B8]
mov       r8,rax
mov       rdx,rsi
mov       rcx,rbp
call      qword ptr [7FFF542D6718]
mov       rcx,rbp
call      CORINFO_HELP_THROW
M01_L04
 
call      qword ptr [7FFF546744C8]
mov       ecx,1B3
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54476D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546742B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542D6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L05
 
call      qword ptr [7FFF546744C8]
mov       ecx,43
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54476D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546742B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542D6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L06
 
mov       rcx,[rdi+10]
cmp       qword ptr [rcx+10],38
jle       short M01_L07
mov       r11,[rcx+38]
test      r11,r11
je        short M01_L07
jmp       short M01_L08
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFF54CB0350
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L08
 
mov       rcx,rbx
mov       rdx,rsi
mov       r8,rbp
call      qword ptr [r11]
mov       [rsp+28],rbp
jmp       near ptr M01_L02
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.GetOrAddDictionary02()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       r9,[rbx+50]
mov       r8,[r9+28]
mov       rdx,[rbx+280]
mov       rcx,offset MD_DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.IDictionary`2>, System.String, DotNetTips.Spargine.Tester.Models.RefTypes.Person`1)
call      qword ptr [7FFF54DBDFC8]; DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IDictionary`2, System.__Canon, System.__Canon)
mov       [rsp+28],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IDictionary`2, System.__Canon, System.__Canon)
		value = value.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		key = key.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		collection = collection.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		if (collection.TryGetValue(key, out var item) is false)
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
			collection.Add(key, value);
			^^^^^^^^^^^^^^^^^^^^^^^^^^^
			item = value;
			^^^^^^^^^^^^^
		return item;
		^^^^^^^^^^^^
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
xor       eax,eax
mov       [rsp+28],rax
mov       [rsp+30],rcx
mov       rdi,rcx
mov       rbx,rdx
mov       rsi,r8
mov       rbp,r9
xor       ecx,ecx
test      rbp,rbp
setne     cl
test      ecx,ecx
je        short M01_L03
xor       ecx,ecx
test      rsi,rsi
setne     cl
test      ecx,ecx
je        near ptr M01_L04
test      rbx,rbx
je        near ptr M01_L05
mov       rcx,[rdi+10]
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L00
jmp       short M01_L01
M01_L00
 
mov       rcx,rdi
mov       rdx,7FFF54DC6668
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L01
 
lea       r8,[rsp+28]
mov       rcx,rbx
mov       rdx,rsi
call      qword ptr [r11]
test      eax,eax
je        near ptr M01_L06
M01_L02
 
mov       rax,[rsp+28]
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L03
 
call      qword ptr [7FFF546844C8]
mov       ecx,1D3
mov       rdx,7FFF545FA408
call      CORINFO_HELP_STRCNS
mov       rdi,rax
mov       ecx,1436
mov       rdx,7FFF54486D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FFF540F6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545FA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540F6B08]; System.String.Concat(System.String, System.String)
mov       rsi,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
call      qword ptr [7FFF546842B8]
mov       r8,rax
mov       rdx,rsi
mov       rcx,rbp
call      qword ptr [7FFF542E6718]
mov       rcx,rbp
call      CORINFO_HELP_THROW
M01_L04
 
call      qword ptr [7FFF546844C8]
mov       ecx,1B3
mov       rdx,7FFF545FA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54486D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540F6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545FA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540F6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546842B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542E6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L05
 
call      qword ptr [7FFF546844C8]
mov       ecx,43
mov       rdx,7FFF545FA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54486D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540F6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545FA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540F6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546842B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542E6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L06
 
mov       rcx,[rdi+10]
cmp       qword ptr [rcx+10],38
jle       short M01_L07
mov       r11,[rcx+38]
test      r11,r11
je        short M01_L07
jmp       short M01_L08
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFF54DC6708
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L08
 
mov       rcx,rbx
mov       rdx,rsi
mov       r8,rbp
call      qword ptr [r11]
mov       [rsp+28],rbp
jmp       near ptr M01_L02
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.HasItemsWithPredicateTest()
push      rdi
push      rsi
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rsi,[rbx+280]
mov       r8,22E7E4021B8
mov       r8,[r8]
test      r8,r8
je        short M00_L02
test      rsi,rsi
je        short M00_L03
M00_L00
 
test      r8,r8
je        short M00_L03
mov       rdx,rsi
mov       rcx,offset MD_System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>>, System.Func`2>,Boolean>)
call      qword ptr [7FFF54BC61F0]; System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Func`2,Boolean>)
M00_L01
 
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,20
pop       rbx
pop       rsi
pop       rdi
ret
M00_L02
 
mov       rcx,offset MT_System.Func`2[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib],[System.Boolean, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rdx,22E7E4021B0
mov       rdx,[rdx]
mov       rcx,rdi
mov       r8,offset DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
call      qword ptr [7FFF54104210]; System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
mov       rcx,22E7E4021B8
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       r8,rdi
test      rsi,rsi
jne       short M00_L00
M00_L03
 
xor       eax,eax
jmp       short M00_L01
 
System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Func`2,Boolean>)
push      rbp
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,70
vzeroupper
lea       rbp,[rsp+90]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
xor       eax,eax
mov       [rbp-30],rax
mov       [rbp-70],rsp
mov       [rbp-28],rcx
mov       rsi,rcx
mov       rdi,rdx
mov       rbx,r8
test      rdi,rdi
je        near ptr M01_L18
test      rbx,rbx
je        near ptr M01_L19
mov       rcx,[rsi+10]
mov       r11,[rcx+10]
test      r11,r11
je        near ptr M01_L15
M01_L00
 
mov       rcx,rdi
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       near ptr M01_L09
M01_L01
 
mov       rcx,[rsi+10]
mov       r11,[rcx+18]
test      r11,r11
je        near ptr M01_L07
M01_L02
 
lea       rdx,[rbp-38]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,offset DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
mov       [rbp+20],rbx
cmp       [rbx+18],rcx
jne       near ptr M01_L08
mov       r14,[rbp-30]
mov       [rbp-60],r14
cmp       [r14],r14b
lea       rcx,[rbp-40]
mov       rax,7FF804645380
call      rax
mov       rdi,[rbp-40]
mov       rdx,22E7C4001C8
mov       rbx,[rdx]
sub       rdi,[rbx+8]
cmp       dword ptr [7FFFB3F9A0DC],0
jne       near ptr M01_L06
M01_L03
 
mov       edx,0B2D05E00
cmp       rdi,rdx
jae       near ptr M01_L11
add       rdi,[rbx+10]
M01_L04
 
mov       r14,[rbp-60]
mov       rdx,[r14+48]
mov       rcx,3FFFFFFFFFFFFFFF
and       rcx,rdi
mov       rax,4000000000000000
or        rcx,rax
mov       rax,3FFFFFFFFFFFFFFF
and       rdx,rax
mov       rax,4000000000000000
or        rdx,rax
mov       rax,3FFFFFFFFFFFFFFF
and       rcx,rax
and       rdx,rax
sub       rcx,rdx
vxorps    xmm0,xmm0,xmm0
vcvtsi2sd xmm0,xmm0,rcx
vdivsd    xmm0,xmm0,[7FFF54C72290]
vxorps    xmm1,xmm1,xmm1
xor       ebx,ebx
vucomisd  xmm0,xmm1
seta      bl
test      ebx,ebx
mov       rax,[rbp-58]
mov       rbx,[rbp+20]
je        short M01_L09
jmp       near ptr M01_L16
M01_L05
 
call      qword ptr [7FFF54475E00]
int       3
M01_L06
 
call      CORINFO_HELP_POLL_GC
jmp       near ptr M01_L03
M01_L07
 
mov       rcx,rsi
mov       rdx,7FFF54BB48E8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L02
M01_L08
 
vmovdqu   xmm0,xmmword ptr [rbp-38]
vmovdqu   xmmword ptr [rbp-50],xmm0
lea       rdx,[rbp-50]
mov       rbx,[rbp+20]
mov       rcx,[rbx+8]
call      qword ptr [rbx+18]
test      eax,eax
mov       rax,[rbp-58]
jne       near ptr M01_L16
M01_L09
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       near ptr M01_L14
lea       rdi,[rax+8]
mov       ecx,[rdi+8]
mov       rdx,[rdi]
cmp       ecx,[rdx+44]
jne       short M01_L05
M01_L10
 
mov       ecx,[rdi+0C]
mov       rdx,[rdi]
mov       r14d,[rdx+38]
cmp       ecx,r14d
jb        short M01_L13
mov       rax,[rbp-58]
inc       r14d
mov       [rdi+0C],r14d
xor       ecx,ecx
mov       [rdi+18],rcx
mov       [rdi+20],rcx
jmp       near ptr M01_L20
M01_L11
 
call      qword ptr [7FFF54346898]; System.DateTime.UpdateLeapSecondCacheAndReturnUtcNow()
mov       rdi,rax
jmp       near ptr M01_L04
M01_L12
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L13
 
mov       rdx,[rdx+10]
lea       r8d,[rcx+1]
mov       [rdi+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L12
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L10
mov       rdx,[rcx]
mov       r14,[rcx+8]
lea       rcx,[rdi+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L01
M01_L14
 
mov       rcx,rax
mov       r11,7FFF53FC10C8
call      qword ptr [r11]
test      eax,eax
je        short M01_L20
jmp       near ptr M01_L01
M01_L15
 
mov       rcx,rsi
mov       rdx,7FFF54BB4810
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L00
M01_L16
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       short M01_L21
M01_L17
 
mov       eax,1
add       rsp,70
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       rbp
ret
M01_L18
 
mov       ecx,10
call      qword ptr [7FFF54477A38]
int       3
M01_L19
 
mov       ecx,0C
call      qword ptr [7FFF54477A38]
int       3
M01_L20
 
mov       rax,[rbp-58]
mov       rcx,rsp
call      M01_L23
jmp       short M01_L22
M01_L21
 
mov       rax,[rbp-58]
mov       rcx,rax
mov       r11,7FFF53FC10D0
call      qword ptr [r11]
jmp       short M01_L17
M01_L22
 
xor       eax,eax
add       rsp,70
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       rbp
ret
M01_L23
 
push      rbp
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,30
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+90]
cmp       qword ptr [rbp-58],0
je        short M01_L24
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-58]
cmp       [rax],rcx
je        short M01_L24
mov       rcx,rax
mov       r11,7FFF53FC10D0
call      qword ptr [r11]
M01_L24
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       rbp
ret
 
DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
push      rbx
sub       rsp,20
vzeroupper
mov       rbx,[rdx+8]
cmp       [rbx],bl
call      qword ptr [7FFF543467F0]; System.DateTime.get_UtcNow()
mov       rcx,[rbx+48]
mov       rdx,3FFFFFFFFFFFFFFF
and       rax,rdx
mov       rdx,4000000000000000
or        rax,rdx
mov       rdx,3FFFFFFFFFFFFFFF
and       rcx,rdx
mov       rdx,4000000000000000
or        rcx,rdx
mov       rdx,3FFFFFFFFFFFFFFF
and       rax,rdx
and       rcx,rdx
sub       rax,rcx
vxorps    xmm0,xmm0,xmm0
vcvtsi2sd xmm0,xmm0,rax
vdivsd    xmm0,xmm0,[7FFF54C72488]
vxorps    xmm1,xmm1,xmm1
xor       eax,eax
vucomisd  xmm0,xmm1
seta      al
add       rsp,20
pop       rbx
ret
 
System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
push      rsi
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,r8
test      rdx,rdx
je        short M03_L00
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
mov       [rbx+18],rsi
add       rsp,28
pop       rbx
pop       rsi
ret
M03_L00
 
call      qword ptr [7FFF541041F8]
int       3
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.HasItemsWithPredicateTest()
push      rdi
push      rsi
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rsi,[rbx+280]
mov       r8,2523E80F2C8
mov       r8,[r8]
test      r8,r8
je        short M00_L02
test      rsi,rsi
je        short M00_L03
M00_L00
 
test      r8,r8
je        short M00_L03
mov       rdx,rsi
mov       rcx,offset MD_System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>>, System.Func`2>,Boolean>)
call      qword ptr [7FFF54B97CD8]; System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Func`2,Boolean>)
M00_L01
 
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,20
pop       rbx
pop       rsi
pop       rdi
ret
M00_L02
 
mov       rcx,offset MT_System.Func`2[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib],[System.Boolean, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rdx,2523E80F2C0
mov       rdx,[rdx]
mov       rcx,rdi
mov       r8,offset DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
call      qword ptr [7FFF540D4210]; System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
mov       rcx,2523E80F2C8
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       r8,rdi
test      rsi,rsi
jne       short M00_L00
M00_L03
 
xor       eax,eax
jmp       short M00_L01
 
System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Func`2,Boolean>)
push      rbp
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,70
vzeroupper
lea       rbp,[rsp+90]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
xor       eax,eax
mov       [rbp-30],rax
mov       [rbp-70],rsp
mov       [rbp-28],rcx
mov       rsi,rcx
mov       rdi,rdx
mov       rbx,r8
test      rdi,rdi
je        near ptr M01_L18
test      rbx,rbx
je        near ptr M01_L19
mov       rcx,[rsi+10]
mov       r11,[rcx+10]
test      r11,r11
je        near ptr M01_L15
M01_L00
 
mov       rcx,rdi
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       near ptr M01_L09
M01_L01
 
mov       rcx,[rsi+10]
mov       r11,[rcx+18]
test      r11,r11
je        near ptr M01_L07
M01_L02
 
lea       rdx,[rbp-38]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,offset DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
mov       [rbp+20],rbx
cmp       [rbx+18],rcx
jne       near ptr M01_L08
mov       r14,[rbp-30]
mov       [rbp-60],r14
cmp       [r14],r14b
lea       rcx,[rbp-40]
mov       rax,7FF804645380
call      rax
mov       rdi,[rbp-40]
mov       rdx,2523E8001C8
mov       rbx,[rdx]
sub       rdi,[rbx+8]
cmp       dword ptr [7FFFB3F9A0DC],0
jne       near ptr M01_L06
M01_L03
 
mov       edx,0B2D05E00
cmp       rdi,rdx
jae       near ptr M01_L11
add       rdi,[rbx+10]
M01_L04
 
mov       r14,[rbp-60]
mov       rdx,[r14+48]
mov       rcx,3FFFFFFFFFFFFFFF
and       rcx,rdi
mov       rax,4000000000000000
or        rcx,rax
mov       rax,3FFFFFFFFFFFFFFF
and       rdx,rax
mov       rax,4000000000000000
or        rdx,rax
mov       rax,3FFFFFFFFFFFFFFF
and       rcx,rax
and       rdx,rax
sub       rcx,rdx
vxorps    xmm0,xmm0,xmm0
vcvtsi2sd xmm0,xmm0,rcx
vdivsd    xmm0,xmm0,[7FFF54C42770]
vxorps    xmm1,xmm1,xmm1
xor       ebx,ebx
vucomisd  xmm0,xmm1
seta      bl
test      ebx,ebx
mov       rax,[rbp-58]
mov       rbx,[rbp+20]
je        short M01_L09
jmp       near ptr M01_L16
M01_L05
 
call      qword ptr [7FFF54445E00]
int       3
M01_L06
 
call      CORINFO_HELP_POLL_GC
jmp       near ptr M01_L03
M01_L07
 
mov       rcx,rsi
mov       rdx,7FFF54B86848
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L02
M01_L08
 
vmovdqu   xmm0,xmmword ptr [rbp-38]
vmovdqu   xmmword ptr [rbp-50],xmm0
lea       rdx,[rbp-50]
mov       rbx,[rbp+20]
mov       rcx,[rbx+8]
call      qword ptr [rbx+18]
test      eax,eax
mov       rax,[rbp-58]
jne       near ptr M01_L16
M01_L09
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       near ptr M01_L14
lea       rdi,[rax+8]
mov       ecx,[rdi+8]
mov       rdx,[rdi]
cmp       ecx,[rdx+44]
jne       short M01_L05
M01_L10
 
mov       ecx,[rdi+0C]
mov       rdx,[rdi]
mov       r14d,[rdx+38]
cmp       ecx,r14d
jb        short M01_L13
mov       rax,[rbp-58]
inc       r14d
mov       [rdi+0C],r14d
xor       ecx,ecx
mov       [rdi+18],rcx
mov       [rdi+20],rcx
jmp       near ptr M01_L20
M01_L11
 
call      qword ptr [7FFF54316898]; System.DateTime.UpdateLeapSecondCacheAndReturnUtcNow()
mov       rdi,rax
jmp       near ptr M01_L04
M01_L12
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L13
 
mov       rdx,[rdx+10]
lea       r8d,[rcx+1]
mov       [rdi+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L12
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L10
mov       rdx,[rcx]
mov       r14,[rcx+8]
lea       rcx,[rdi+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L01
M01_L14
 
mov       rcx,rax
mov       r11,7FFF53F910C8
call      qword ptr [r11]
test      eax,eax
je        short M01_L20
jmp       near ptr M01_L01
M01_L15
 
mov       rcx,rsi
mov       rdx,7FFF54B86770
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L00
M01_L16
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       short M01_L21
M01_L17
 
mov       eax,1
add       rsp,70
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       rbp
ret
M01_L18
 
mov       ecx,10
call      qword ptr [7FFF54447A38]
int       3
M01_L19
 
mov       ecx,0C
call      qword ptr [7FFF54447A38]
int       3
M01_L20
 
mov       rax,[rbp-58]
mov       rcx,rsp
call      M01_L23
jmp       short M01_L22
M01_L21
 
mov       rax,[rbp-58]
mov       rcx,rax
mov       r11,7FFF53F910D0
call      qword ptr [r11]
jmp       short M01_L17
M01_L22
 
xor       eax,eax
add       rsp,70
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       rbp
ret
M01_L23
 
push      rbp
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,30
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+90]
cmp       qword ptr [rbp-58],0
je        short M01_L24
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-58]
cmp       [rax],rcx
je        short M01_L24
mov       rcx,rax
mov       r11,7FFF53F910D0
call      qword ptr [r11]
M01_L24
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       rbp
ret
 
DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
push      rbx
sub       rsp,20
vzeroupper
mov       rbx,[rdx+8]
cmp       [rbx],bl
call      qword ptr [7FFF543167F0]; System.DateTime.get_UtcNow()
mov       rcx,[rbx+48]
mov       rdx,3FFFFFFFFFFFFFFF
and       rax,rdx
mov       rdx,4000000000000000
or        rax,rdx
mov       rdx,3FFFFFFFFFFFFFFF
and       rcx,rdx
mov       rdx,4000000000000000
or        rcx,rdx
mov       rdx,3FFFFFFFFFFFFFFF
and       rax,rdx
and       rcx,rdx
sub       rax,rcx
vxorps    xmm0,xmm0,xmm0
vcvtsi2sd xmm0,xmm0,rax
vdivsd    xmm0,xmm0,[7FFF54C42968]
vxorps    xmm1,xmm1,xmm1
xor       eax,eax
vucomisd  xmm0,xmm1
seta      al
add       rsp,20
pop       rbx
ret
 
System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
push      rsi
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,r8
test      rdx,rdx
je        short M03_L00
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
mov       [rbx+18],rsi
add       rsp,28
pop       rbx
pop       rsi
ret
M03_L00
 
call      qword ptr [7FFF540D41F8]
int       3
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.HasItemsWithPredicateTest()
push      rdi
push      rsi
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rsi,[rbx+280]
mov       r8,25B2B8021B8
mov       r8,[r8]
test      r8,r8
je        short M00_L02
test      rsi,rsi
je        short M00_L03
M00_L00
 
test      r8,r8
je        short M00_L03
mov       rdx,rsi
mov       rcx,offset MD_System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>>, System.Func`2>,Boolean>)
call      qword ptr [7FFF54BC7CD8]; System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Func`2,Boolean>)
M00_L01
 
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,20
pop       rbx
pop       rsi
pop       rdi
ret
M00_L02
 
mov       rcx,offset MT_System.Func`2[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib],[System.Boolean, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rdx,25B2B8021B0
mov       rdx,[rdx]
mov       rcx,rdi
mov       r8,offset DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
call      qword ptr [7FFF54104210]; System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
mov       rcx,25B2B8021B8
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       r8,rdi
test      rsi,rsi
jne       short M00_L00
M00_L03
 
xor       eax,eax
jmp       short M00_L01
 
System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Func`2,Boolean>)
push      rbp
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,70
vzeroupper
lea       rbp,[rsp+90]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
xor       eax,eax
mov       [rbp-30],rax
mov       [rbp-70],rsp
mov       [rbp-28],rcx
mov       rsi,rcx
mov       rdi,rdx
mov       rbx,r8
test      rdi,rdi
je        near ptr M01_L18
test      rbx,rbx
je        near ptr M01_L19
mov       rcx,[rsi+10]
mov       r11,[rcx+10]
test      r11,r11
je        near ptr M01_L15
M01_L00
 
mov       rcx,rdi
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       near ptr M01_L09
M01_L01
 
mov       rcx,[rsi+10]
mov       r11,[rcx+18]
test      r11,r11
je        near ptr M01_L07
M01_L02
 
lea       rdx,[rbp-38]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,offset DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
mov       [rbp+20],rbx
cmp       [rbx+18],rcx
jne       near ptr M01_L08
mov       r14,[rbp-30]
mov       [rbp-60],r14
cmp       [r14],r14b
lea       rcx,[rbp-40]
mov       rax,7FF804645380
call      rax
mov       rdi,[rbp-40]
mov       rdx,25B238001C8
mov       rbx,[rdx]
sub       rdi,[rbx+8]
cmp       dword ptr [7FFFB3F9A0DC],0
jne       near ptr M01_L06
M01_L03
 
mov       edx,0B2D05E00
cmp       rdi,rdx
jae       near ptr M01_L11
add       rdi,[rbx+10]
M01_L04
 
mov       r14,[rbp-60]
mov       rdx,[r14+48]
mov       rcx,3FFFFFFFFFFFFFFF
and       rcx,rdi
mov       rax,4000000000000000
or        rcx,rax
mov       rax,3FFFFFFFFFFFFFFF
and       rdx,rax
mov       rax,4000000000000000
or        rdx,rax
mov       rax,3FFFFFFFFFFFFFFF
and       rcx,rax
and       rdx,rax
sub       rcx,rdx
vxorps    xmm0,xmm0,xmm0
vcvtsi2sd xmm0,xmm0,rcx
vdivsd    xmm0,xmm0,[7FFF54C72510]
vxorps    xmm1,xmm1,xmm1
xor       ebx,ebx
vucomisd  xmm0,xmm1
seta      bl
test      ebx,ebx
mov       rax,[rbp-58]
mov       rbx,[rbp+20]
je        short M01_L09
jmp       near ptr M01_L16
M01_L05
 
call      qword ptr [7FFF54475E00]
int       3
M01_L06
 
call      CORINFO_HELP_POLL_GC
jmp       near ptr M01_L03
M01_L07
 
mov       rcx,rsi
mov       rdx,7FFF54BB6848
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L02
M01_L08
 
vmovdqu   xmm0,xmmword ptr [rbp-38]
vmovdqu   xmmword ptr [rbp-50],xmm0
lea       rdx,[rbp-50]
mov       rbx,[rbp+20]
mov       rcx,[rbx+8]
call      qword ptr [rbx+18]
test      eax,eax
mov       rax,[rbp-58]
jne       near ptr M01_L16
M01_L09
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       near ptr M01_L14
lea       rdi,[rax+8]
mov       ecx,[rdi+8]
mov       rdx,[rdi]
cmp       ecx,[rdx+44]
jne       short M01_L05
M01_L10
 
mov       ecx,[rdi+0C]
mov       rdx,[rdi]
mov       r14d,[rdx+38]
cmp       ecx,r14d
jb        short M01_L13
mov       rax,[rbp-58]
inc       r14d
mov       [rdi+0C],r14d
xor       ecx,ecx
mov       [rdi+18],rcx
mov       [rdi+20],rcx
jmp       near ptr M01_L20
M01_L11
 
call      qword ptr [7FFF54346898]; System.DateTime.UpdateLeapSecondCacheAndReturnUtcNow()
mov       rdi,rax
jmp       near ptr M01_L04
M01_L12
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L13
 
mov       rdx,[rdx+10]
lea       r8d,[rcx+1]
mov       [rdi+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L12
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L10
mov       rdx,[rcx]
mov       r14,[rcx+8]
lea       rcx,[rdi+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L01
M01_L14
 
mov       rcx,rax
mov       r11,7FFF53FC10C8
call      qword ptr [r11]
test      eax,eax
je        short M01_L20
jmp       near ptr M01_L01
M01_L15
 
mov       rcx,rsi
mov       rdx,7FFF54BB6770
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L00
M01_L16
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       short M01_L21
M01_L17
 
mov       eax,1
add       rsp,70
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       rbp
ret
M01_L18
 
mov       ecx,10
call      qword ptr [7FFF54477A38]
int       3
M01_L19
 
mov       ecx,0C
call      qword ptr [7FFF54477A38]
int       3
M01_L20
 
mov       rax,[rbp-58]
mov       rcx,rsp
call      M01_L23
jmp       short M01_L22
M01_L21
 
mov       rax,[rbp-58]
mov       rcx,rax
mov       r11,7FFF53FC10D0
call      qword ptr [r11]
jmp       short M01_L17
M01_L22
 
xor       eax,eax
add       rsp,70
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       rbp
ret
M01_L23
 
push      rbp
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,30
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+90]
cmp       qword ptr [rbp-58],0
je        short M01_L24
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-58]
cmp       [rax],rcx
je        short M01_L24
mov       rcx,rax
mov       r11,7FFF53FC10D0
call      qword ptr [r11]
M01_L24
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       rbp
ret
 
DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
push      rbx
sub       rsp,20
vzeroupper
mov       rbx,[rdx+8]
cmp       [rbx],bl
call      qword ptr [7FFF543467F0]; System.DateTime.get_UtcNow()
mov       rcx,[rbx+48]
mov       rdx,3FFFFFFFFFFFFFFF
and       rax,rdx
mov       rdx,4000000000000000
or        rax,rdx
mov       rdx,3FFFFFFFFFFFFFFF
and       rcx,rdx
mov       rdx,4000000000000000
or        rcx,rdx
mov       rdx,3FFFFFFFFFFFFFFF
and       rax,rdx
and       rcx,rdx
sub       rax,rcx
vxorps    xmm0,xmm0,xmm0
vcvtsi2sd xmm0,xmm0,rax
vdivsd    xmm0,xmm0,[7FFF54C72708]
vxorps    xmm1,xmm1,xmm1
xor       eax,eax
vucomisd  xmm0,xmm1
seta      al
add       rsp,20
pop       rbx
ret
 
System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
push      rsi
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,r8
test      rdx,rdx
je        short M03_L00
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
mov       [rbx+18],rsi
add       rsp,28
pop       rbx
pop       rsi
ret
M03_L00
 
call      qword ptr [7FFF541041F8]
int       3
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.HasItemsWithPredicateTest()
push      rdi
push      rsi
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rsi,[rbx+280]
mov       r8,2844580F2C8
mov       r8,[r8]
test      r8,r8
je        short M00_L02
test      rsi,rsi
je        short M00_L03
M00_L00
 
test      r8,r8
je        short M00_L03
mov       rdx,rsi
mov       rcx,offset MD_System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>>, System.Func`2>,Boolean>)
call      qword ptr [7FFF54B97CD8]; System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Func`2,Boolean>)
M00_L01
 
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,20
pop       rbx
pop       rsi
pop       rdi
ret
M00_L02
 
mov       rcx,offset MT_System.Func`2[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib],[System.Boolean, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rdx,2844580F2C0
mov       rdx,[rdx]
mov       rcx,rdi
mov       r8,offset DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
call      qword ptr [7FFF540D4210]; System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
mov       rcx,2844580F2C8
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       r8,rdi
test      rsi,rsi
jne       short M00_L00
M00_L03
 
xor       eax,eax
jmp       short M00_L01
 
System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Func`2,Boolean>)
push      rbp
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,70
vzeroupper
lea       rbp,[rsp+90]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
xor       eax,eax
mov       [rbp-30],rax
mov       [rbp-70],rsp
mov       [rbp-28],rcx
mov       rsi,rcx
mov       rdi,rdx
mov       rbx,r8
test      rdi,rdi
je        near ptr M01_L18
test      rbx,rbx
je        near ptr M01_L19
mov       rcx,[rsi+10]
mov       r11,[rcx+10]
test      r11,r11
je        near ptr M01_L15
M01_L00
 
mov       rcx,rdi
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       near ptr M01_L09
M01_L01
 
mov       rcx,[rsi+10]
mov       r11,[rcx+18]
test      r11,r11
je        near ptr M01_L07
M01_L02
 
lea       rdx,[rbp-38]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,offset DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
mov       [rbp+20],rbx
cmp       [rbx+18],rcx
jne       near ptr M01_L08
mov       r14,[rbp-30]
mov       [rbp-60],r14
cmp       [r14],r14b
lea       rcx,[rbp-40]
mov       rax,7FF804645380
call      rax
mov       rdi,[rbp-40]
mov       rdx,284458001C8
mov       rbx,[rdx]
sub       rdi,[rbx+8]
cmp       dword ptr [7FFFB3F9A0DC],0
jne       near ptr M01_L06
M01_L03
 
mov       edx,0B2D05E00
cmp       rdi,rdx
jae       near ptr M01_L11
add       rdi,[rbx+10]
M01_L04
 
mov       r14,[rbp-60]
mov       rdx,[r14+48]
mov       rcx,3FFFFFFFFFFFFFFF
and       rcx,rdi
mov       rax,4000000000000000
or        rcx,rax
mov       rax,3FFFFFFFFFFFFFFF
and       rdx,rax
mov       rax,4000000000000000
or        rdx,rax
mov       rax,3FFFFFFFFFFFFFFF
and       rcx,rax
and       rdx,rax
sub       rcx,rdx
vxorps    xmm0,xmm0,xmm0
vcvtsi2sd xmm0,xmm0,rcx
vdivsd    xmm0,xmm0,[7FFF54C42810]
vxorps    xmm1,xmm1,xmm1
xor       ebx,ebx
vucomisd  xmm0,xmm1
seta      bl
test      ebx,ebx
mov       rax,[rbp-58]
mov       rbx,[rbp+20]
je        short M01_L09
jmp       near ptr M01_L16
M01_L05
 
call      qword ptr [7FFF54445E00]
int       3
M01_L06
 
call      CORINFO_HELP_POLL_GC
jmp       near ptr M01_L03
M01_L07
 
mov       rcx,rsi
mov       rdx,7FFF54B86848
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L02
M01_L08
 
vmovdqu   xmm0,xmmword ptr [rbp-38]
vmovdqu   xmmword ptr [rbp-50],xmm0
lea       rdx,[rbp-50]
mov       rbx,[rbp+20]
mov       rcx,[rbx+8]
call      qword ptr [rbx+18]
test      eax,eax
mov       rax,[rbp-58]
jne       near ptr M01_L16
M01_L09
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       near ptr M01_L14
lea       rdi,[rax+8]
mov       ecx,[rdi+8]
mov       rdx,[rdi]
cmp       ecx,[rdx+44]
jne       short M01_L05
M01_L10
 
mov       ecx,[rdi+0C]
mov       rdx,[rdi]
mov       r14d,[rdx+38]
cmp       ecx,r14d
jb        short M01_L13
mov       rax,[rbp-58]
inc       r14d
mov       [rdi+0C],r14d
xor       ecx,ecx
mov       [rdi+18],rcx
mov       [rdi+20],rcx
jmp       near ptr M01_L20
M01_L11
 
call      qword ptr [7FFF54316898]; System.DateTime.UpdateLeapSecondCacheAndReturnUtcNow()
mov       rdi,rax
jmp       near ptr M01_L04
M01_L12
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L13
 
mov       rdx,[rdx+10]
lea       r8d,[rcx+1]
mov       [rdi+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L12
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L10
mov       rdx,[rcx]
mov       r14,[rcx+8]
lea       rcx,[rdi+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L01
M01_L14
 
mov       rcx,rax
mov       r11,7FFF53F910C8
call      qword ptr [r11]
test      eax,eax
je        short M01_L20
jmp       near ptr M01_L01
M01_L15
 
mov       rcx,rsi
mov       rdx,7FFF54B86770
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L00
M01_L16
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       short M01_L21
M01_L17
 
mov       eax,1
add       rsp,70
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       rbp
ret
M01_L18
 
mov       ecx,10
call      qword ptr [7FFF54447A38]
int       3
M01_L19
 
mov       ecx,0C
call      qword ptr [7FFF54447A38]
int       3
M01_L20
 
mov       rax,[rbp-58]
mov       rcx,rsp
call      M01_L23
jmp       short M01_L22
M01_L21
 
mov       rax,[rbp-58]
mov       rcx,rax
mov       r11,7FFF53F910D0
call      qword ptr [r11]
jmp       short M01_L17
M01_L22
 
xor       eax,eax
add       rsp,70
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       rbp
ret
M01_L23
 
push      rbp
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,30
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+90]
cmp       qword ptr [rbp-58],0
je        short M01_L24
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-58]
cmp       [rax],rcx
je        short M01_L24
mov       rcx,[rbp-58]
mov       r11,7FFF53F910D0
call      qword ptr [r11]
M01_L24
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       rbp
ret
 
DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
push      rbx
sub       rsp,20
vzeroupper
mov       rbx,[rdx+8]
cmp       [rbx],bl
call      qword ptr [7FFF543167F0]; System.DateTime.get_UtcNow()
mov       rcx,[rbx+48]
mov       rdx,3FFFFFFFFFFFFFFF
and       rax,rdx
mov       rdx,4000000000000000
or        rax,rdx
mov       rdx,3FFFFFFFFFFFFFFF
and       rcx,rdx
mov       rdx,4000000000000000
or        rcx,rdx
mov       rdx,3FFFFFFFFFFFFFFF
and       rax,rdx
and       rcx,rdx
sub       rax,rcx
vxorps    xmm0,xmm0,xmm0
vcvtsi2sd xmm0,xmm0,rax
vdivsd    xmm0,xmm0,[7FFF54C42A08]
vxorps    xmm1,xmm1,xmm1
xor       eax,eax
vucomisd  xmm0,xmm1
seta      al
add       rsp,20
pop       rbx
ret
 
System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
push      rsi
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,r8
test      rdx,rdx
je        short M03_L00
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
mov       [rbx+18],rsi
add       rsp,28
pop       rbx
pop       rsi
ret
M03_L00
 
call      qword ptr [7FFF540D41F8]
int       3
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.HasItemsWithPredicateTest()
push      rdi
push      rsi
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rsi,[rbx+280]
mov       r8,2740D80F2C8
mov       r8,[r8]
test      r8,r8
je        short M00_L02
test      rsi,rsi
je        short M00_L03
M00_L00
 
test      r8,r8
je        short M00_L03
mov       rdx,rsi
mov       rcx,offset MD_System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>>, System.Func`2>,Boolean>)
call      qword ptr [7FFF54BC7CD8]; System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Func`2,Boolean>)
M00_L01
 
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,20
pop       rbx
pop       rsi
pop       rdi
ret
M00_L02
 
mov       rcx,offset MT_System.Func`2[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib],[System.Boolean, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rdx,2740D80F2C0
mov       rdx,[rdx]
mov       rcx,rdi
mov       r8,offset DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
call      qword ptr [7FFF54104210]; System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
mov       rcx,2740D80F2C8
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       r8,rdi
test      rsi,rsi
jne       short M00_L00
M00_L03
 
xor       eax,eax
jmp       short M00_L01
 
System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Func`2,Boolean>)
push      rbp
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,70
vzeroupper
lea       rbp,[rsp+90]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
xor       eax,eax
mov       [rbp-30],rax
mov       [rbp-70],rsp
mov       [rbp-28],rcx
mov       rsi,rcx
mov       rdi,rdx
mov       rbx,r8
test      rdi,rdi
je        near ptr M01_L18
test      rbx,rbx
je        near ptr M01_L19
mov       rcx,[rsi+10]
mov       r11,[rcx+10]
test      r11,r11
je        near ptr M01_L15
M01_L00
 
mov       rcx,rdi
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       near ptr M01_L09
M01_L01
 
mov       rcx,[rsi+10]
mov       r11,[rcx+18]
test      r11,r11
je        near ptr M01_L07
M01_L02
 
lea       rdx,[rbp-38]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,offset DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
mov       [rbp+20],rbx
cmp       [rbx+18],rcx
jne       near ptr M01_L08
mov       r14,[rbp-30]
mov       [rbp-60],r14
cmp       [r14],r14b
lea       rcx,[rbp-40]
mov       rax,7FF804645380
call      rax
mov       rdi,[rbp-40]
mov       rdx,2740D8001C8
mov       rbx,[rdx]
sub       rdi,[rbx+8]
cmp       dword ptr [7FFFB3F9A0DC],0
jne       near ptr M01_L06
M01_L03
 
mov       edx,0B2D05E00
cmp       rdi,rdx
jae       near ptr M01_L11
add       rdi,[rbx+10]
M01_L04
 
mov       r14,[rbp-60]
mov       rdx,[r14+48]
mov       rcx,3FFFFFFFFFFFFFFF
and       rcx,rdi
mov       rax,4000000000000000
or        rcx,rax
mov       rax,3FFFFFFFFFFFFFFF
and       rdx,rax
mov       rax,4000000000000000
or        rdx,rax
mov       rax,3FFFFFFFFFFFFFFF
and       rcx,rax
and       rdx,rax
sub       rcx,rdx
vxorps    xmm0,xmm0,xmm0
vcvtsi2sd xmm0,xmm0,rcx
vdivsd    xmm0,xmm0,[7FFF54C72E70]
vxorps    xmm1,xmm1,xmm1
xor       ebx,ebx
vucomisd  xmm0,xmm1
seta      bl
test      ebx,ebx
mov       rax,[rbp-58]
mov       rbx,[rbp+20]
je        short M01_L09
jmp       near ptr M01_L16
M01_L05
 
call      qword ptr [7FFF54475E00]
int       3
M01_L06
 
call      CORINFO_HELP_POLL_GC
jmp       near ptr M01_L03
M01_L07
 
mov       rcx,rsi
mov       rdx,7FFF54BB6CD8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L02
M01_L08
 
vmovdqu   xmm0,xmmword ptr [rbp-38]
vmovdqu   xmmword ptr [rbp-50],xmm0
lea       rdx,[rbp-50]
mov       rbx,[rbp+20]
mov       rcx,[rbx+8]
call      qword ptr [rbx+18]
test      eax,eax
mov       rax,[rbp-58]
jne       near ptr M01_L16
M01_L09
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       near ptr M01_L14
lea       rdi,[rax+8]
mov       ecx,[rdi+8]
mov       rdx,[rdi]
cmp       ecx,[rdx+44]
jne       short M01_L05
M01_L10
 
mov       ecx,[rdi+0C]
mov       rdx,[rdi]
mov       r14d,[rdx+38]
cmp       ecx,r14d
jb        short M01_L13
mov       rax,[rbp-58]
inc       r14d
mov       [rdi+0C],r14d
xor       ecx,ecx
mov       [rdi+18],rcx
mov       [rdi+20],rcx
jmp       near ptr M01_L20
M01_L11
 
call      qword ptr [7FFF54346898]; System.DateTime.UpdateLeapSecondCacheAndReturnUtcNow()
mov       rdi,rax
jmp       near ptr M01_L04
M01_L12
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L13
 
mov       rdx,[rdx+10]
lea       r8d,[rcx+1]
mov       [rdi+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L12
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L10
mov       rdx,[rcx]
mov       r14,[rcx+8]
lea       rcx,[rdi+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L01
M01_L14
 
mov       rcx,rax
mov       r11,7FFF53FC10C8
call      qword ptr [r11]
test      eax,eax
je        short M01_L20
jmp       near ptr M01_L01
M01_L15
 
mov       rcx,rsi
mov       rdx,7FFF54BB6C00
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L00
M01_L16
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       short M01_L21
M01_L17
 
mov       eax,1
add       rsp,70
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       rbp
ret
M01_L18
 
mov       ecx,10
call      qword ptr [7FFF54477A38]
int       3
M01_L19
 
mov       ecx,0C
call      qword ptr [7FFF54477A38]
int       3
M01_L20
 
mov       rax,[rbp-58]
mov       rcx,rsp
call      M01_L23
jmp       short M01_L22
M01_L21
 
mov       rax,[rbp-58]
mov       rcx,rax
mov       r11,7FFF53FC10D0
call      qword ptr [r11]
jmp       short M01_L17
M01_L22
 
xor       eax,eax
add       rsp,70
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       rbp
ret
M01_L23
 
push      rbp
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,30
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+90]
cmp       qword ptr [rbp-58],0
je        short M01_L24
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-58]
cmp       [rax],rcx
je        short M01_L24
mov       rcx,[rbp-58]
mov       r11,7FFF53FC10D0
call      qword ptr [r11]
M01_L24
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       rbp
ret
 
DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
push      rbx
sub       rsp,20
vzeroupper
mov       rbx,[rdx+8]
cmp       [rbx],bl
call      qword ptr [7FFF543467F0]; System.DateTime.get_UtcNow()
mov       rcx,[rbx+48]
mov       rdx,3FFFFFFFFFFFFFFF
and       rax,rdx
mov       rdx,4000000000000000
or        rax,rdx
mov       rdx,3FFFFFFFFFFFFFFF
and       rcx,rdx
mov       rdx,4000000000000000
or        rcx,rdx
mov       rdx,3FFFFFFFFFFFFFFF
and       rax,rdx
and       rcx,rdx
sub       rax,rcx
vxorps    xmm0,xmm0,xmm0
vcvtsi2sd xmm0,xmm0,rax
vdivsd    xmm0,xmm0,[7FFF54C73068]
vxorps    xmm1,xmm1,xmm1
xor       eax,eax
vucomisd  xmm0,xmm1
seta      al
add       rsp,20
pop       rbx
ret
 
System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
push      rsi
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,r8
test      rdx,rdx
je        short M03_L00
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
mov       [rbx+18],rsi
add       rsp,28
pop       rbx
pop       rsi
ret
M03_L00
 
call      qword ptr [7FFF541041F8]
int       3
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.HasItemsWithPredicateTest()
push      rdi
push      rsi
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rsi,[rbx+280]
mov       r8,1B4BE80F2C8
mov       r8,[r8]
test      r8,r8
je        short M00_L02
test      rsi,rsi
je        short M00_L03
M00_L00
 
test      r8,r8
je        short M00_L03
mov       rdx,rsi
mov       rcx,offset MD_System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>>, System.Func`2>,Boolean>)
call      qword ptr [7FFF54BDD440]; System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Func`2,Boolean>)
M00_L01
 
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,20
pop       rbx
pop       rsi
pop       rdi
ret
M00_L02
 
mov       rcx,offset MT_System.Func`2[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib],[System.Boolean, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rdx,1B4BE80F2C0
mov       rdx,[rdx]
mov       rcx,rdi
mov       r8,offset DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
call      qword ptr [7FFF54104210]; System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
mov       rcx,1B4BE80F2C8
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       r8,rdi
test      rsi,rsi
jne       short M00_L00
M00_L03
 
xor       eax,eax
jmp       short M00_L01
 
System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Func`2,Boolean>)
push      rbp
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,70
vzeroupper
lea       rbp,[rsp+90]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
xor       eax,eax
mov       [rbp-30],rax
mov       [rbp-70],rsp
mov       [rbp-28],rcx
mov       rsi,rcx
mov       rdi,rdx
mov       rbx,r8
test      rdi,rdi
je        near ptr M01_L18
test      rbx,rbx
je        near ptr M01_L19
mov       rcx,[rsi+10]
mov       r11,[rcx+10]
test      r11,r11
je        near ptr M01_L15
M01_L00
 
mov       rcx,rdi
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       near ptr M01_L09
M01_L01
 
mov       rcx,[rsi+10]
mov       r11,[rcx+18]
test      r11,r11
je        near ptr M01_L07
M01_L02
 
lea       rdx,[rbp-38]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,offset DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
mov       [rbp+20],rbx
cmp       [rbx+18],rcx
jne       near ptr M01_L08
mov       r14,[rbp-30]
mov       [rbp-60],r14
cmp       [r14],r14b
lea       rcx,[rbp-40]
mov       rax,7FF804645380
call      rax
mov       rdi,[rbp-40]
mov       rdx,1B4BE8001C8
mov       rbx,[rdx]
sub       rdi,[rbx+8]
cmp       dword ptr [7FFFB3F9A0DC],0
jne       near ptr M01_L06
M01_L03
 
mov       edx,0B2D05E00
cmp       rdi,rdx
jae       near ptr M01_L11
add       rdi,[rbx+10]
M01_L04
 
mov       r14,[rbp-60]
mov       rdx,[r14+48]
mov       rcx,3FFFFFFFFFFFFFFF
and       rcx,rdi
mov       rax,4000000000000000
or        rcx,rax
mov       rax,3FFFFFFFFFFFFFFF
and       rdx,rax
mov       rax,4000000000000000
or        rdx,rax
mov       rax,3FFFFFFFFFFFFFFF
and       rcx,rax
and       rdx,rax
sub       rcx,rdx
vxorps    xmm0,xmm0,xmm0
vcvtsi2sd xmm0,xmm0,rcx
vdivsd    xmm0,xmm0,[7FFF54C907F0]
vxorps    xmm1,xmm1,xmm1
xor       ebx,ebx
vucomisd  xmm0,xmm1
seta      bl
test      ebx,ebx
mov       rax,[rbp-58]
mov       rbx,[rbp+20]
je        short M01_L09
jmp       near ptr M01_L16
M01_L05
 
call      qword ptr [7FFF54475E00]
int       3
M01_L06
 
call      CORINFO_HELP_POLL_GC
jmp       near ptr M01_L03
M01_L07
 
mov       rcx,rsi
mov       rdx,7FFF54BC7E10
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L02
M01_L08
 
vmovdqu   xmm0,xmmword ptr [rbp-38]
vmovdqu   xmmword ptr [rbp-50],xmm0
lea       rdx,[rbp-50]
mov       rbx,[rbp+20]
mov       rcx,[rbx+8]
call      qword ptr [rbx+18]
test      eax,eax
mov       rax,[rbp-58]
jne       near ptr M01_L16
M01_L09
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       near ptr M01_L14
lea       rdi,[rax+8]
mov       ecx,[rdi+8]
mov       rdx,[rdi]
cmp       ecx,[rdx+44]
jne       short M01_L05
M01_L10
 
mov       ecx,[rdi+0C]
mov       rdx,[rdi]
mov       r14d,[rdx+38]
cmp       ecx,r14d
jb        short M01_L13
mov       rax,[rbp-58]
inc       r14d
mov       [rdi+0C],r14d
xor       ecx,ecx
mov       [rdi+18],rcx
mov       [rdi+20],rcx
jmp       near ptr M01_L20
M01_L11
 
call      qword ptr [7FFF54346898]; System.DateTime.UpdateLeapSecondCacheAndReturnUtcNow()
mov       rdi,rax
jmp       near ptr M01_L04
M01_L12
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L13
 
mov       rdx,[rdx+10]
lea       r8d,[rcx+1]
mov       [rdi+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L12
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L10
mov       rdx,[rcx]
mov       r14,[rcx+8]
lea       rcx,[rdi+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L01
M01_L14
 
mov       rcx,rax
mov       r11,7FFF53FC1208
call      qword ptr [r11]
test      eax,eax
je        short M01_L20
jmp       near ptr M01_L01
M01_L15
 
mov       rcx,rsi
mov       rdx,7FFF54BC7D38
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L00
M01_L16
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       short M01_L21
M01_L17
 
mov       eax,1
add       rsp,70
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       rbp
ret
M01_L18
 
mov       ecx,10
call      qword ptr [7FFF54477A38]
int       3
M01_L19
 
mov       ecx,0C
call      qword ptr [7FFF54477A38]
int       3
M01_L20
 
mov       rax,[rbp-58]
mov       rcx,rsp
call      M01_L23
jmp       short M01_L22
M01_L21
 
mov       rax,[rbp-58]
mov       rcx,rax
mov       r11,7FFF53FC1210
call      qword ptr [r11]
jmp       short M01_L17
M01_L22
 
xor       eax,eax
add       rsp,70
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       rbp
ret
M01_L23
 
push      rbp
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,30
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+90]
cmp       qword ptr [rbp-58],0
je        short M01_L24
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-58]
cmp       [rax],rcx
je        short M01_L24
mov       rcx,[rbp-58]
mov       r11,7FFF53FC1210
call      qword ptr [r11]
M01_L24
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       rbp
ret
 
DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
push      rbx
sub       rsp,20
vzeroupper
mov       rbx,[rdx+8]
cmp       [rbx],bl
call      qword ptr [7FFF543467F0]; System.DateTime.get_UtcNow()
mov       rcx,[rbx+48]
mov       rdx,3FFFFFFFFFFFFFFF
and       rax,rdx
mov       rdx,4000000000000000
or        rax,rdx
mov       rdx,3FFFFFFFFFFFFFFF
and       rcx,rdx
mov       rdx,4000000000000000
or        rcx,rdx
mov       rdx,3FFFFFFFFFFFFFFF
and       rax,rdx
and       rcx,rdx
sub       rax,rcx
vxorps    xmm0,xmm0,xmm0
vcvtsi2sd xmm0,xmm0,rax
vdivsd    xmm0,xmm0,[7FFF54C909E8]
vxorps    xmm1,xmm1,xmm1
xor       eax,eax
vucomisd  xmm0,xmm1
seta      al
add       rsp,20
pop       rbx
ret
 
System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
push      rsi
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,r8
test      rdx,rdx
je        short M03_L00
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
mov       [rbx+18],rsi
add       rsp,28
pop       rbx
pop       rsi
ret
M03_L00
 
call      qword ptr [7FFF541041F8]
int       3
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.HasItemsWithPredicateTest()
push      rdi
push      rsi
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rsi,[rbx+280]
mov       r8,256B80021B8
mov       r8,[r8]
test      r8,r8
je        short M00_L02
test      rsi,rsi
je        short M00_L03
M00_L00
 
test      r8,r8
je        short M00_L03
mov       rdx,rsi
mov       rcx,offset MD_System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>>, System.Func`2>,Boolean>)
call      qword ptr [7FFF54CD4CF0]; System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Func`2,Boolean>)
M00_L01
 
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,20
pop       rbx
pop       rsi
pop       rdi
ret
M00_L02
 
mov       rcx,offset MT_System.Func`2[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib],[System.Boolean, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rdx,256B80021B0
mov       rdx,[rdx]
mov       rcx,rdi
mov       r8,offset DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
call      qword ptr [7FFF54104210]; System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
mov       rcx,256B80021B8
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       r8,rdi
test      rsi,rsi
jne       short M00_L00
M00_L03
 
xor       eax,eax
jmp       short M00_L01
 
System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Func`2,Boolean>)
push      rbp
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,70
vzeroupper
lea       rbp,[rsp+90]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
xor       eax,eax
mov       [rbp-30],rax
mov       [rbp-70],rsp
mov       [rbp-28],rcx
mov       rsi,rcx
mov       rdi,rdx
mov       rbx,r8
test      rdi,rdi
je        near ptr M01_L18
test      rbx,rbx
je        near ptr M01_L19
mov       rcx,[rsi+10]
mov       r11,[rcx+10]
test      r11,r11
je        near ptr M01_L15
M01_L00
 
mov       rcx,rdi
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       near ptr M01_L09
M01_L01
 
mov       rcx,[rsi+10]
mov       r11,[rcx+18]
test      r11,r11
je        near ptr M01_L07
M01_L02
 
lea       rdx,[rbp-38]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,offset DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
mov       [rbp+20],rbx
cmp       [rbx+18],rcx
jne       near ptr M01_L08
mov       r14,[rbp-30]
mov       [rbp-60],r14
cmp       [r14],r14b
lea       rcx,[rbp-40]
mov       rax,7FF804645380
call      rax
mov       rdi,[rbp-40]
mov       rdx,256B00001C8
mov       rbx,[rdx]
sub       rdi,[rbx+8]
cmp       dword ptr [7FFFB3F9A0DC],0
jne       near ptr M01_L06
M01_L03
 
mov       edx,0B2D05E00
cmp       rdi,rdx
jae       near ptr M01_L11
add       rdi,[rbx+10]
M01_L04
 
mov       r14,[rbp-60]
mov       rdx,[r14+48]
mov       rcx,3FFFFFFFFFFFFFFF
and       rcx,rdi
mov       rax,4000000000000000
or        rcx,rax
mov       rax,3FFFFFFFFFFFFFFF
and       rdx,rax
mov       rax,4000000000000000
or        rdx,rax
mov       rax,3FFFFFFFFFFFFFFF
and       rcx,rax
and       rdx,rax
sub       rcx,rdx
vxorps    xmm0,xmm0,xmm0
vcvtsi2sd xmm0,xmm0,rcx
vdivsd    xmm0,xmm0,[7FFF54C3A230]
vxorps    xmm1,xmm1,xmm1
xor       ebx,ebx
vucomisd  xmm0,xmm1
seta      bl
test      ebx,ebx
mov       rax,[rbp-58]
mov       rbx,[rbp+20]
je        short M01_L09
jmp       near ptr M01_L16
M01_L05
 
call      qword ptr [7FFF54475E00]
int       3
M01_L06
 
call      CORINFO_HELP_POLL_GC
jmp       near ptr M01_L03
M01_L07
 
mov       rcx,rsi
mov       rdx,7FFF54CC2480
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L02
M01_L08
 
vmovdqu   xmm0,xmmword ptr [rbp-38]
vmovdqu   xmmword ptr [rbp-50],xmm0
lea       rdx,[rbp-50]
mov       rbx,[rbp+20]
mov       rcx,[rbx+8]
call      qword ptr [rbx+18]
test      eax,eax
mov       rax,[rbp-58]
jne       near ptr M01_L16
M01_L09
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       near ptr M01_L14
lea       rdi,[rax+8]
mov       ecx,[rdi+8]
mov       rdx,[rdi]
cmp       ecx,[rdx+44]
jne       short M01_L05
M01_L10
 
mov       ecx,[rdi+0C]
mov       rdx,[rdi]
mov       r14d,[rdx+38]
cmp       ecx,r14d
jb        short M01_L13
mov       rax,[rbp-58]
inc       r14d
mov       [rdi+0C],r14d
xor       ecx,ecx
mov       [rdi+18],rcx
mov       [rdi+20],rcx
jmp       near ptr M01_L20
M01_L11
 
call      qword ptr [7FFF54346898]; System.DateTime.UpdateLeapSecondCacheAndReturnUtcNow()
mov       rdi,rax
jmp       near ptr M01_L04
M01_L12
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L13
 
mov       rdx,[rdx+10]
lea       r8d,[rcx+1]
mov       [rdi+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L12
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L10
mov       rdx,[rcx]
mov       r14,[rcx+8]
lea       rcx,[rdi+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L01
M01_L14
 
mov       rcx,rax
mov       r11,7FFF53FC1958
call      qword ptr [r11]
test      eax,eax
je        short M01_L20
jmp       near ptr M01_L01
M01_L15
 
mov       rcx,rsi
mov       rdx,7FFF54CC23A8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L00
M01_L16
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       short M01_L21
M01_L17
 
mov       eax,1
add       rsp,70
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       rbp
ret
M01_L18
 
mov       ecx,10
call      qword ptr [7FFF54477A38]
int       3
M01_L19
 
mov       ecx,0C
call      qword ptr [7FFF54477A38]
int       3
M01_L20
 
mov       rax,[rbp-58]
mov       rcx,rsp
call      M01_L23
jmp       short M01_L22
M01_L21
 
mov       rax,[rbp-58]
mov       rcx,rax
mov       r11,7FFF53FC1960
call      qword ptr [r11]
jmp       short M01_L17
M01_L22
 
xor       eax,eax
add       rsp,70
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       rbp
ret
M01_L23
 
push      rbp
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,30
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+90]
cmp       qword ptr [rbp-58],0
je        short M01_L24
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-58]
cmp       [rax],rcx
je        short M01_L24
mov       rcx,[rbp-58]
mov       r11,7FFF53FC1960
call      qword ptr [r11]
M01_L24
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       rbp
ret
 
DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
push      rbx
sub       rsp,20
vzeroupper
mov       rbx,[rdx+8]
cmp       [rbx],bl
call      qword ptr [7FFF543467F0]; System.DateTime.get_UtcNow()
mov       rcx,[rbx+48]
mov       rdx,3FFFFFFFFFFFFFFF
and       rax,rdx
mov       rdx,4000000000000000
or        rax,rdx
mov       rdx,3FFFFFFFFFFFFFFF
and       rcx,rdx
mov       rdx,4000000000000000
or        rcx,rdx
mov       rdx,3FFFFFFFFFFFFFFF
and       rax,rdx
and       rcx,rdx
sub       rax,rcx
vxorps    xmm0,xmm0,xmm0
vcvtsi2sd xmm0,xmm0,rax
vdivsd    xmm0,xmm0,[7FFF54C3A428]
vxorps    xmm1,xmm1,xmm1
xor       eax,eax
vucomisd  xmm0,xmm1
seta      al
add       rsp,20
pop       rbx
ret
 
System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
push      rsi
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,r8
test      rdx,rdx
je        short M03_L00
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
mov       [rbx+18],rsi
add       rsp,28
pop       rbx
pop       rsi
ret
M03_L00
 
call      qword ptr [7FFF541041F8]
int       3
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.HasItemsWithPredicateTest()
push      rdi
push      rsi
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rsi,[rbx+280]
mov       r8,2A50BC021B8
mov       r8,[r8]
test      r8,r8
je        short M00_L02
test      rsi,rsi
je        short M00_L03
M00_L00
 
test      r8,r8
je        short M00_L03
mov       rdx,rsi
mov       rcx,offset MD_System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>>, System.Func`2>,Boolean>)
call      qword ptr [7FFF54D9E3A0]; System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Func`2,Boolean>)
M00_L01
 
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,20
pop       rbx
pop       rsi
pop       rdi
ret
M00_L02
 
mov       rcx,offset MT_System.Func`2[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib],[System.Boolean, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rdx,2A50BC021B0
mov       rdx,[rdx]
mov       rcx,rdi
mov       r8,offset DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
call      qword ptr [7FFF540D4210]; System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
mov       rcx,2A50BC021B8
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       r8,rdi
test      rsi,rsi
jne       short M00_L00
M00_L03
 
xor       eax,eax
jmp       short M00_L01
 
System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Func`2,Boolean>)
push      rbp
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,70
vzeroupper
lea       rbp,[rsp+90]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
xor       eax,eax
mov       [rbp-30],rax
mov       [rbp-70],rsp
mov       [rbp-28],rcx
mov       rsi,rcx
mov       rdi,rdx
mov       rbx,r8
test      rdi,rdi
je        near ptr M01_L18
test      rbx,rbx
je        near ptr M01_L19
mov       rcx,[rsi+10]
mov       r11,[rcx+10]
test      r11,r11
je        near ptr M01_L15
M01_L00
 
mov       rcx,rdi
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       near ptr M01_L09
M01_L01
 
mov       rcx,[rsi+10]
mov       r11,[rcx+18]
test      r11,r11
je        near ptr M01_L07
M01_L02
 
lea       rdx,[rbp-38]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,offset DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
mov       [rbp+20],rbx
cmp       [rbx+18],rcx
jne       near ptr M01_L08
mov       r14,[rbp-30]
mov       [rbp-60],r14
cmp       [r14],r14b
lea       rcx,[rbp-40]
mov       rax,7FF804645380
call      rax
mov       rdi,[rbp-40]
mov       rdx,2A503C001C8
mov       rbx,[rdx]
sub       rdi,[rbx+8]
cmp       dword ptr [7FFFB3F9A0DC],0
jne       near ptr M01_L06
M01_L03
 
mov       edx,0B2D05E00
cmp       rdi,rdx
jae       near ptr M01_L11
add       rdi,[rbx+10]
M01_L04
 
mov       r14,[rbp-60]
mov       rdx,[r14+48]
mov       rcx,3FFFFFFFFFFFFFFF
and       rcx,rdi
mov       rax,4000000000000000
or        rcx,rax
mov       rax,3FFFFFFFFFFFFFFF
and       rdx,rax
mov       rax,4000000000000000
or        rdx,rax
mov       rax,3FFFFFFFFFFFFFFF
and       rcx,rax
and       rdx,rax
sub       rcx,rdx
vxorps    xmm0,xmm0,xmm0
vcvtsi2sd xmm0,xmm0,rcx
vdivsd    xmm0,xmm0,[7FFF54DCD8F0]
vxorps    xmm1,xmm1,xmm1
xor       ebx,ebx
vucomisd  xmm0,xmm1
seta      bl
test      ebx,ebx
mov       rax,[rbp-58]
mov       rbx,[rbp+20]
je        short M01_L09
jmp       near ptr M01_L16
M01_L05
 
call      qword ptr [7FFF54445E00]
int       3
M01_L06
 
call      CORINFO_HELP_POLL_GC
jmp       near ptr M01_L03
M01_L07
 
mov       rcx,rsi
mov       rdx,7FFF54DA67B0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L02
M01_L08
 
vmovdqu   xmm0,xmmword ptr [rbp-38]
vmovdqu   xmmword ptr [rbp-50],xmm0
lea       rdx,[rbp-50]
mov       rbx,[rbp+20]
mov       rcx,[rbx+8]
call      qword ptr [rbx+18]
test      eax,eax
mov       rax,[rbp-58]
jne       near ptr M01_L16
M01_L09
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       near ptr M01_L14
lea       rdi,[rax+8]
mov       ecx,[rdi+8]
mov       rdx,[rdi]
cmp       ecx,[rdx+44]
jne       short M01_L05
M01_L10
 
mov       ecx,[rdi+0C]
mov       rdx,[rdi]
mov       r14d,[rdx+38]
cmp       ecx,r14d
jb        short M01_L13
mov       rax,[rbp-58]
inc       r14d
mov       [rdi+0C],r14d
xor       ecx,ecx
mov       [rdi+18],rcx
mov       [rdi+20],rcx
jmp       near ptr M01_L20
M01_L11
 
call      qword ptr [7FFF54316898]; System.DateTime.UpdateLeapSecondCacheAndReturnUtcNow()
mov       rdi,rax
jmp       near ptr M01_L04
M01_L12
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L13
 
mov       rdx,[rdx+10]
lea       r8d,[rcx+1]
mov       [rdi+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L12
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L10
mov       rdx,[rcx]
mov       r14,[rcx+8]
lea       rcx,[rdi+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L01
M01_L14
 
mov       rcx,rax
mov       r11,7FFF53F91BA8
call      qword ptr [r11]
test      eax,eax
je        short M01_L20
jmp       near ptr M01_L01
M01_L15
 
mov       rcx,rsi
mov       rdx,7FFF54DA66D8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L00
M01_L16
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       short M01_L21
M01_L17
 
mov       eax,1
add       rsp,70
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       rbp
ret
M01_L18
 
mov       ecx,10
call      qword ptr [7FFF54447A38]
int       3
M01_L19
 
mov       ecx,0C
call      qword ptr [7FFF54447A38]
int       3
M01_L20
 
mov       rax,[rbp-58]
mov       rcx,rsp
call      M01_L23
jmp       short M01_L22
M01_L21
 
mov       rax,[rbp-58]
mov       rcx,rax
mov       r11,7FFF53F91BB0
call      qword ptr [r11]
jmp       short M01_L17
M01_L22
 
xor       eax,eax
add       rsp,70
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       rbp
ret
M01_L23
 
push      rbp
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,30
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+90]
cmp       qword ptr [rbp-58],0
je        short M01_L24
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-58]
cmp       [rax],rcx
je        short M01_L24
mov       rcx,rax
mov       r11,7FFF53F91BB0
call      qword ptr [r11]
M01_L24
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       rbp
ret
 
DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
push      rbx
sub       rsp,20
vzeroupper
mov       rbx,[rdx+8]
cmp       [rbx],bl
call      qword ptr [7FFF543167F0]; System.DateTime.get_UtcNow()
mov       rcx,[rbx+48]
mov       rdx,3FFFFFFFFFFFFFFF
and       rax,rdx
mov       rdx,4000000000000000
or        rax,rdx
mov       rdx,3FFFFFFFFFFFFFFF
and       rcx,rdx
mov       rdx,4000000000000000
or        rcx,rdx
mov       rdx,3FFFFFFFFFFFFFFF
and       rax,rdx
and       rcx,rdx
sub       rax,rcx
vxorps    xmm0,xmm0,xmm0
vcvtsi2sd xmm0,xmm0,rax
vdivsd    xmm0,xmm0,[7FFF54DCDAE8]
vxorps    xmm1,xmm1,xmm1
xor       eax,eax
vucomisd  xmm0,xmm1
seta      al
add       rsp,20
pop       rbx
ret
 
System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
push      rsi
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,r8
test      rdx,rdx
je        short M03_L00
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
mov       [rbx+18],rsi
add       rsp,28
pop       rbx
pop       rsi
ret
M03_L00
 
call      qword ptr [7FFF540D41F8]
int       3
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToSortedDictionaryComparerTest()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rcx,offset MT_DotNetTips.Spargine.Core.Collections.Generic.OrdinalStringComparer
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rdi,[rbx+280]
test      rdi,rdi
je        short M00_L00
mov       rcx,offset MT_System.Collections.Generic.SortedDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
mov       rcx,rbp
mov       rdx,rdi
mov       r8,rsi
call      qword ptr [7FFF54BA6430]; System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
mov       [rsp+20],rbp
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFF546744C8]
mov       ecx,43
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54476D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546742B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542D6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
mov       [rbp-60],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,r8
test      rbx,rbx
je        near ptr M01_L21
mov       rdi,[rcx]
mov       rdx,rdi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       rax,[rax+40]
test      rax,rax
je        near ptr M01_L05
M01_L00
 
mov       rcx,rax
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,rsi
call      qword ptr [7FFF54BA7168]; System.Collections.Generic.SortedDictionary`2+KeyValuePairComparer[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1)
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+48]
test      rcx,rcx
je        near ptr M01_L06
M01_L01
 
mov       rdx,rbx
call      qword ptr [7FFF540E4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L22
M01_L02
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L07
M01_L03
 
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,r14
call      qword ptr [7FFF54BAC018]; System.Collections.Generic.SortedSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1>)
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+58]
test      r11,r11
je        short M01_L08
M01_L04
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       short M01_L09
M01_L05
 
mov       rcx,rdx
mov       rdx,7FFF54D62790
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
jmp       near ptr M01_L00
M01_L06
 
mov       rcx,rdi
mov       rdx,7FFF54D627A8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L01
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFF54D62A30
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L03
M01_L08
 
mov       rcx,rdi
mov       rdx,7FFF54D62A50
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L04
M01_L09
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M01_L12
M01_L10
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+60]
test      r11,r11
je        near ptr M01_L17
M01_L11
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,[rbp+10]
mov       rdx,[rcx+18]
vmovdqu   xmm0,xmmword ptr [rbp-40]
vmovdqu   xmmword ptr [rbp-50],xmm0
mov       rcx,rdx
lea       rdx,[rbp-50]
cmp       [rcx],ecx
call      qword ptr [7FFF54BB92D8]; System.Collections.Generic.TreeSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]].AddIfNotPresent(System.Collections.Generic.KeyValuePair`2)
mov       rax,[rbp-58]
M01_L12
 
cmp       rsi,r15
jne       short M01_L15
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M01_L18
M01_L13
 
mov       ecx,[r14+0C]
mov       rbx,[r14]
cmp       ecx,[rbx+38]
jae       short M01_L16
mov       rdx,[rbx+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L14
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L13
mov       rdx,[rcx]
mov       rbx,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,rbx
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L10
M01_L14
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L15
 
mov       rcx,rax
mov       r11,7FFF53FA10E0
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L10
mov       rax,[rbp-58]
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp-58]
mov       ecx,[rbx+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       short M01_L19
M01_L17
 
mov       rcx,rdi
mov       rdx,7FFF54D62A70
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L11
M01_L18
 
call      qword ptr [7FFF54455E00]
int       3
M01_L19
 
cmp       rsi,r15
jne       near ptr M01_L27
M01_L20
 
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L21
 
mov       ecx,7ED
mov       rdx,7FFF54440658
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF542D6790]
int       3
M01_L22
 
mov       r15,[rsi+18]
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rdi
mov       rdx,7FFF54D62790
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L24
 
mov       rdx,[r15+10]
call      qword ptr [7FFF540E4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
test      rax,rax
je        near ptr M01_L02
mov       rcx,[rax+8]
mov       rdx,[r14+8]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L02
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L25
jmp       short M01_L26
M01_L25
 
mov       rcx,rdi
mov       rdx,7FFF54D62A30
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L26
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rdx,[rsi+18]
mov       rcx,rbx
mov       r8,r14
call      qword ptr [7FFF54BAC048]
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L27
 
mov       rcx,rax
mov       r11,7FFF53FA10E8
call      qword ptr [r11]
jmp       near ptr M01_L20
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M01_L28
mov       rax,[rbp-58]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L28
mov       rcx,rax
mov       r11,7FFF53FA10E8
call      qword ptr [r11]
M01_L28
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF54195B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF54195B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFF54455D58]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,21B78EF0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToSortedDictionaryComparerTest()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rcx,offset MT_DotNetTips.Spargine.Core.Collections.Generic.OrdinalStringComparer
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rdi,[rbx+280]
test      rdi,rdi
je        short M00_L00
mov       rcx,offset MT_System.Collections.Generic.SortedDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
mov       rcx,rbp
mov       rdx,rdi
mov       r8,rsi
call      qword ptr [7FFF54BAC030]; System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
mov       [rsp+20],rbp
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFF546744C8]
mov       ecx,43
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54476D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546742B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542D6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
mov       [rbp-60],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,r8
test      rbx,rbx
je        near ptr M01_L21
mov       rdi,[rcx]
mov       rdx,rdi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       rax,[rax+40]
test      rax,rax
je        near ptr M01_L05
M01_L00
 
mov       rcx,rax
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,rsi
call      qword ptr [7FFF54BACD68]; System.Collections.Generic.SortedDictionary`2+KeyValuePairComparer[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1)
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+48]
test      rcx,rcx
je        near ptr M01_L06
M01_L01
 
mov       rdx,rbx
call      qword ptr [7FFF540E4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L22
M01_L02
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L07
M01_L03
 
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,r14
call      qword ptr [7FFF54BADBF0]; System.Collections.Generic.SortedSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1>)
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+58]
test      r11,r11
je        short M01_L08
M01_L04
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       short M01_L09
M01_L05
 
mov       rcx,rdx
mov       rdx,7FFF54D64100
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
jmp       near ptr M01_L00
M01_L06
 
mov       rcx,rdi
mov       rdx,7FFF54D64118
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L01
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFF54D643A0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L03
M01_L08
 
mov       rcx,rdi
mov       rdx,7FFF54D643C0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L04
M01_L09
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M01_L12
M01_L10
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+60]
test      r11,r11
je        near ptr M01_L17
M01_L11
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,[rbp+10]
mov       rdx,[rcx+18]
vmovdqu   xmm0,xmmword ptr [rbp-40]
vmovdqu   xmmword ptr [rbp-50],xmm0
mov       rcx,rdx
lea       rdx,[rbp-50]
cmp       [rcx],ecx
call      qword ptr [7FFF54BBCBD8]; System.Collections.Generic.TreeSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]].AddIfNotPresent(System.Collections.Generic.KeyValuePair`2)
mov       rax,[rbp-58]
M01_L12
 
cmp       rsi,r15
jne       short M01_L15
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M01_L18
M01_L13
 
mov       ecx,[r14+0C]
mov       rbx,[r14]
cmp       ecx,[rbx+38]
jae       short M01_L16
mov       rdx,[rbx+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L14
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L13
mov       rdx,[rcx]
mov       rbx,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,rbx
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L10
M01_L14
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L15
 
mov       rcx,rax
mov       r11,7FFF53FA0FC0
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L10
mov       rax,[rbp-58]
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp-58]
mov       ecx,[rbx+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       short M01_L19
M01_L17
 
mov       rcx,rdi
mov       rdx,7FFF54D643E0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L11
M01_L18
 
call      qword ptr [7FFF54455E00]
int       3
M01_L19
 
cmp       rsi,r15
jne       near ptr M01_L27
M01_L20
 
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L21
 
mov       ecx,7ED
mov       rdx,7FFF54440658
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF542D6790]
int       3
M01_L22
 
mov       r15,[rsi+18]
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rdi
mov       rdx,7FFF54D64100
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L24
 
mov       rdx,[r15+10]
call      qword ptr [7FFF540E4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
test      rax,rax
je        near ptr M01_L02
mov       rcx,[rax+8]
mov       rdx,[r14+8]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L02
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L25
jmp       short M01_L26
M01_L25
 
mov       rcx,rdi
mov       rdx,7FFF54D643A0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L26
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rdx,[rsi+18]
mov       rcx,rbx
mov       r8,r14
call      qword ptr [7FFF54BADC20]
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L27
 
mov       rcx,rax
mov       r11,7FFF53FA0FC8
call      qword ptr [r11]
jmp       near ptr M01_L20
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M01_L28
mov       rax,[rbp-58]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L28
mov       rcx,rax
mov       r11,7FFF53FA0FC8
call      qword ptr [r11]
M01_L28
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF54195B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF54195B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFF54455D58]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,25B1D5B0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToSortedDictionaryComparerTest()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rcx,offset MT_DotNetTips.Spargine.Core.Collections.Generic.OrdinalStringComparer
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rdi,[rbx+280]
test      rdi,rdi
je        short M00_L00
mov       rcx,offset MT_System.Collections.Generic.SortedDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
mov       rcx,rbp
mov       rdx,rdi
mov       r8,rsi
call      qword ptr [7FFF54BCC030]; System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
mov       [rsp+20],rbp
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFF546944C8]
mov       ecx,43
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54496D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546942B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542F6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
mov       [rbp-60],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,r8
test      rbx,rbx
je        near ptr M01_L21
mov       rdi,[rcx]
mov       rdx,rdi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       rax,[rax+40]
test      rax,rax
je        near ptr M01_L05
M01_L00
 
mov       rcx,rax
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,rsi
call      qword ptr [7FFF54BCCD68]; System.Collections.Generic.SortedDictionary`2+KeyValuePairComparer[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1)
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+48]
test      rcx,rcx
je        near ptr M01_L06
M01_L01
 
mov       rdx,rbx
call      qword ptr [7FFF54104360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L22
M01_L02
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L07
M01_L03
 
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,r14
call      qword ptr [7FFF54BCDBF0]; System.Collections.Generic.SortedSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1>)
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+58]
test      r11,r11
je        short M01_L08
M01_L04
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       short M01_L09
M01_L05
 
mov       rcx,rdx
mov       rdx,7FFF54D83E18
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
jmp       near ptr M01_L00
M01_L06
 
mov       rcx,rdi
mov       rdx,7FFF54D83E30
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L01
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFF54D840B8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L03
M01_L08
 
mov       rcx,rdi
mov       rdx,7FFF54D840D8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L04
M01_L09
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M01_L12
M01_L10
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+60]
test      r11,r11
je        near ptr M01_L17
M01_L11
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,[rbp+10]
mov       rdx,[rcx+18]
vmovdqu   xmm0,xmmword ptr [rbp-40]
vmovdqu   xmmword ptr [rbp-50],xmm0
mov       rcx,rdx
lea       rdx,[rbp-50]
cmp       [rcx],ecx
call      qword ptr [7FFF54BDCBD8]; System.Collections.Generic.TreeSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]].AddIfNotPresent(System.Collections.Generic.KeyValuePair`2)
mov       rax,[rbp-58]
M01_L12
 
cmp       rsi,r15
jne       short M01_L15
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M01_L18
M01_L13
 
mov       ecx,[r14+0C]
mov       rbx,[r14]
cmp       ecx,[rbx+38]
jae       short M01_L16
mov       rdx,[rbx+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L14
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L13
mov       rdx,[rcx]
mov       rbx,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,rbx
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L10
M01_L14
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L15
 
mov       rcx,rax
mov       r11,7FFF53FC0FC0
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L10
mov       rax,[rbp-58]
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp-58]
mov       ecx,[rbx+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       short M01_L19
M01_L17
 
mov       rcx,rdi
mov       rdx,7FFF54D840F8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L11
M01_L18
 
call      qword ptr [7FFF54475E00]
int       3
M01_L19
 
cmp       rsi,r15
jne       near ptr M01_L27
M01_L20
 
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L21
 
mov       ecx,7ED
mov       rdx,7FFF54460658
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF542F6790]
int       3
M01_L22
 
mov       r15,[rsi+18]
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rdi
mov       rdx,7FFF54D83E18
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L24
 
mov       rdx,[r15+10]
call      qword ptr [7FFF54104360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
test      rax,rax
je        near ptr M01_L02
mov       rcx,[rax+8]
mov       rdx,[r14+8]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L02
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L25
jmp       short M01_L26
M01_L25
 
mov       rcx,rdi
mov       rdx,7FFF54D840B8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L26
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rdx,[rsi+18]
mov       rcx,rbx
mov       r8,r14
call      qword ptr [7FFF54BCDC20]
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L27
 
mov       rcx,rax
mov       r11,7FFF53FC0FC8
call      qword ptr [r11]
jmp       near ptr M01_L20
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M01_L28
mov       rax,[rbp-58]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L28
mov       rcx,rax
mov       r11,7FFF53FC0FC8
call      qword ptr [r11]
M01_L28
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF541B5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF541B5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFF54475D58]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,26F9C940008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToSortedDictionaryComparerTest()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rcx,offset MT_DotNetTips.Spargine.Core.Collections.Generic.OrdinalStringComparer
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rdi,[rbx+280]
test      rdi,rdi
je        short M00_L00
mov       rcx,offset MT_System.Collections.Generic.SortedDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
mov       rcx,rbp
mov       rdx,rdi
mov       r8,rsi
call      qword ptr [7FFF54BCC030]; System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
mov       [rsp+20],rbp
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFF546944C8]
mov       ecx,43
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54496D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546942B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542F6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
mov       [rbp-60],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,r8
test      rbx,rbx
je        near ptr M01_L21
mov       rdi,[rcx]
mov       rdx,rdi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       rax,[rax+40]
test      rax,rax
je        near ptr M01_L05
M01_L00
 
mov       rcx,rax
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,rsi
call      qword ptr [7FFF54BCCD68]; System.Collections.Generic.SortedDictionary`2+KeyValuePairComparer[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1)
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+48]
test      rcx,rcx
je        near ptr M01_L06
M01_L01
 
mov       rdx,rbx
call      qword ptr [7FFF54104360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L22
M01_L02
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L07
M01_L03
 
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,r14
call      qword ptr [7FFF54BCDBF0]; System.Collections.Generic.SortedSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1>)
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+58]
test      r11,r11
je        short M01_L08
M01_L04
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       short M01_L09
M01_L05
 
mov       rcx,rdx
mov       rdx,7FFF54D84AC0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
jmp       near ptr M01_L00
M01_L06
 
mov       rcx,rdi
mov       rdx,7FFF54D84AD8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L01
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFF54D84D60
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L03
M01_L08
 
mov       rcx,rdi
mov       rdx,7FFF54D84D80
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L04
M01_L09
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M01_L12
M01_L10
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+60]
test      r11,r11
je        near ptr M01_L17
M01_L11
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,[rbp+10]
mov       rdx,[rcx+18]
vmovdqu   xmm0,xmmword ptr [rbp-40]
vmovdqu   xmmword ptr [rbp-50],xmm0
mov       rcx,rdx
lea       rdx,[rbp-50]
cmp       [rcx],ecx
call      qword ptr [7FFF54BDCFB0]; System.Collections.Generic.TreeSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]].AddIfNotPresent(System.Collections.Generic.KeyValuePair`2)
mov       rax,[rbp-58]
M01_L12
 
cmp       rsi,r15
jne       short M01_L15
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M01_L18
M01_L13
 
mov       ecx,[r14+0C]
mov       rbx,[r14]
cmp       ecx,[rbx+38]
jae       short M01_L16
mov       rdx,[rbx+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L14
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L13
mov       rdx,[rcx]
mov       rbx,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,rbx
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L10
M01_L14
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L15
 
mov       rcx,rax
mov       r11,7FFF53FC0FC0
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L10
mov       rax,[rbp-58]
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp-58]
mov       ecx,[rbx+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       short M01_L19
M01_L17
 
mov       rcx,rdi
mov       rdx,7FFF54D84DA0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L11
M01_L18
 
call      qword ptr [7FFF54475E00]
int       3
M01_L19
 
cmp       rsi,r15
jne       near ptr M01_L27
M01_L20
 
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L21
 
mov       ecx,7ED
mov       rdx,7FFF54460658
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF542F6790]
int       3
M01_L22
 
mov       r15,[rsi+18]
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rdi
mov       rdx,7FFF54D84AC0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L24
 
mov       rdx,[r15+10]
call      qword ptr [7FFF54104360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
test      rax,rax
je        near ptr M01_L02
mov       rcx,[rax+8]
mov       rdx,[r14+8]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L02
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L25
jmp       short M01_L26
M01_L25
 
mov       rcx,rdi
mov       rdx,7FFF54D84D60
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L26
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rdx,[rsi+18]
mov       rcx,rbx
mov       r8,r14
call      qword ptr [7FFF54BCDC20]
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L27
 
mov       rcx,rax
mov       r11,7FFF53FC0FC8
call      qword ptr [r11]
jmp       near ptr M01_L20
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M01_L28
mov       rax,[rbp-58]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L28
mov       rcx,rax
mov       r11,7FFF53FC0FC8
call      qword ptr [r11]
M01_L28
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF541B5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF541B5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFF54475D58]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,21FA8B60008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToSortedDictionaryComparerTest()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rcx,offset MT_DotNetTips.Spargine.Core.Collections.Generic.OrdinalStringComparer
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rdi,[rbx+280]
test      rdi,rdi
je        short M00_L00
mov       rcx,offset MT_System.Collections.Generic.SortedDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
mov       rcx,rbp
mov       rdx,rdi
mov       r8,rsi
call      qword ptr [7FFF54BCC030]; System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
mov       [rsp+20],rbp
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFF546944C8]
mov       ecx,43
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54496D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546942B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542F6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
mov       [rbp-60],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,r8
test      rbx,rbx
je        near ptr M01_L21
mov       rdi,[rcx]
mov       rdx,rdi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       rax,[rax+40]
test      rax,rax
je        near ptr M01_L05
M01_L00
 
mov       rcx,rax
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,rsi
call      qword ptr [7FFF54BCCD68]; System.Collections.Generic.SortedDictionary`2+KeyValuePairComparer[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1)
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+48]
test      rcx,rcx
je        near ptr M01_L06
M01_L01
 
mov       rdx,rbx
call      qword ptr [7FFF54104360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L22
M01_L02
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L07
M01_L03
 
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,r14
call      qword ptr [7FFF54BCDBF0]; System.Collections.Generic.SortedSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1>)
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+58]
test      r11,r11
je        short M01_L08
M01_L04
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       short M01_L09
M01_L05
 
mov       rcx,rdx
mov       rdx,7FFF54D844A8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
jmp       near ptr M01_L00
M01_L06
 
mov       rcx,rdi
mov       rdx,7FFF54D844C0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L01
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFF54D84748
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L03
M01_L08
 
mov       rcx,rdi
mov       rdx,7FFF54D84768
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L04
M01_L09
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M01_L12
M01_L10
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+60]
test      r11,r11
je        near ptr M01_L17
M01_L11
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,[rbp+10]
mov       rdx,[rcx+18]
vmovdqu   xmm0,xmmword ptr [rbp-40]
vmovdqu   xmmword ptr [rbp-50],xmm0
mov       rcx,rdx
lea       rdx,[rbp-50]
cmp       [rcx],ecx
call      qword ptr [7FFF54BDD3D8]; System.Collections.Generic.TreeSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]].AddIfNotPresent(System.Collections.Generic.KeyValuePair`2)
mov       rax,[rbp-58]
M01_L12
 
cmp       rsi,r15
jne       short M01_L15
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M01_L18
M01_L13
 
mov       ecx,[r14+0C]
mov       rbx,[r14]
cmp       ecx,[rbx+38]
jae       short M01_L16
mov       rdx,[rbx+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L14
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L13
mov       rdx,[rcx]
mov       rbx,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,rbx
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L10
M01_L14
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L15
 
mov       rcx,rax
mov       r11,7FFF53FC0FC0
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L10
mov       rax,[rbp-58]
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp-58]
mov       ecx,[rbx+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       short M01_L19
M01_L17
 
mov       rcx,rdi
mov       rdx,7FFF54D84788
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L11
M01_L18
 
call      qword ptr [7FFF54475E00]
int       3
M01_L19
 
cmp       rsi,r15
jne       near ptr M01_L27
M01_L20
 
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L21
 
mov       ecx,7ED
mov       rdx,7FFF54460658
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF542F6790]
int       3
M01_L22
 
mov       r15,[rsi+18]
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rdi
mov       rdx,7FFF54D844A8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L24
 
mov       rdx,[r15+10]
call      qword ptr [7FFF54104360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
test      rax,rax
je        near ptr M01_L02
mov       rcx,[rax+8]
mov       rdx,[r14+8]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L02
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L25
jmp       short M01_L26
M01_L25
 
mov       rcx,rdi
mov       rdx,7FFF54D84748
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L26
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rdx,[rsi+18]
mov       rcx,rbx
mov       r8,r14
call      qword ptr [7FFF54BCDC20]
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L27
 
mov       rcx,rax
mov       r11,7FFF53FC0FC8
call      qword ptr [r11]
jmp       near ptr M01_L20
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M01_L28
mov       rax,[rbp-58]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L28
mov       rcx,rax
mov       r11,7FFF53FC0FC8
call      qword ptr [r11]
M01_L28
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF541B5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF541B5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFF54475D58]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,30E3DB10008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToSortedDictionaryComparerTest()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rcx,offset MT_DotNetTips.Spargine.Core.Collections.Generic.OrdinalStringComparer
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rdi,[rbx+280]
test      rdi,rdi
je        short M00_L00
mov       rcx,offset MT_System.Collections.Generic.SortedDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
mov       rcx,rbp
mov       rdx,rdi
mov       r8,rsi
call      qword ptr [7FFF54BCC030]; System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
mov       [rsp+20],rbp
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFF546944C8]
mov       ecx,43
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54496D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546942B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542F6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
mov       [rbp-60],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,r8
test      rbx,rbx
je        near ptr M01_L21
mov       rdi,[rcx]
mov       rdx,rdi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       rax,[rax+40]
test      rax,rax
je        near ptr M01_L05
M01_L00
 
mov       rcx,rax
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,rsi
call      qword ptr [7FFF54BCCD68]; System.Collections.Generic.SortedDictionary`2+KeyValuePairComparer[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1)
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+48]
test      rcx,rcx
je        near ptr M01_L06
M01_L01
 
mov       rdx,rbx
call      qword ptr [7FFF54104360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L22
M01_L02
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L07
M01_L03
 
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,r14
call      qword ptr [7FFF54BCDBF0]; System.Collections.Generic.SortedSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1>)
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+58]
test      r11,r11
je        short M01_L08
M01_L04
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       short M01_L09
M01_L05
 
mov       rcx,rdx
mov       rdx,7FFF54D843E8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
jmp       near ptr M01_L00
M01_L06
 
mov       rcx,rdi
mov       rdx,7FFF54D84400
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L01
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFF54D84688
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L03
M01_L08
 
mov       rcx,rdi
mov       rdx,7FFF54D846A8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L04
M01_L09
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M01_L12
M01_L10
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+60]
test      r11,r11
je        near ptr M01_L17
M01_L11
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,[rbp+10]
mov       rdx,[rcx+18]
vmovdqu   xmm0,xmmword ptr [rbp-40]
vmovdqu   xmmword ptr [rbp-50],xmm0
mov       rcx,rdx
lea       rdx,[rbp-50]
cmp       [rcx],ecx
call      qword ptr [7FFF54BDD3D8]; System.Collections.Generic.TreeSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]].AddIfNotPresent(System.Collections.Generic.KeyValuePair`2)
mov       rax,[rbp-58]
M01_L12
 
cmp       rsi,r15
jne       short M01_L15
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M01_L18
M01_L13
 
mov       ecx,[r14+0C]
mov       rbx,[r14]
cmp       ecx,[rbx+38]
jae       short M01_L16
mov       rdx,[rbx+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L14
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L13
mov       rdx,[rcx]
mov       rbx,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,rbx
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L10
M01_L14
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L15
 
mov       rcx,rax
mov       r11,7FFF53FC0FC0
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L10
mov       rax,[rbp-58]
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp-58]
mov       ecx,[rbx+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       short M01_L19
M01_L17
 
mov       rcx,rdi
mov       rdx,7FFF54D846C8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L11
M01_L18
 
call      qword ptr [7FFF54475E00]
int       3
M01_L19
 
cmp       rsi,r15
jne       near ptr M01_L27
M01_L20
 
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L21
 
mov       ecx,7ED
mov       rdx,7FFF54460658
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF542F6790]
int       3
M01_L22
 
mov       r15,[rsi+18]
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rdi
mov       rdx,7FFF54D843E8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L24
 
mov       rdx,[r15+10]
call      qword ptr [7FFF54104360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
test      rax,rax
je        near ptr M01_L02
mov       rcx,[rax+8]
mov       rdx,[r14+8]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L02
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L25
jmp       short M01_L26
M01_L25
 
mov       rcx,rdi
mov       rdx,7FFF54D84688
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L26
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rdx,[rsi+18]
mov       rcx,rbx
mov       r8,r14
call      qword ptr [7FFF54BCDC20]
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L27
 
mov       rcx,rax
mov       r11,7FFF53FC0FC8
call      qword ptr [r11]
jmp       near ptr M01_L20
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M01_L28
mov       rax,[rbp-58]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L28
mov       rcx,rax
mov       r11,7FFF53FC0FC8
call      qword ptr [r11]
M01_L28
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF541B5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF541B5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFF54475D58]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,1E271E70008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToSortedDictionaryComparerTest()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rcx,offset MT_DotNetTips.Spargine.Core.Collections.Generic.OrdinalStringComparer
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rdi,[rbx+280]
test      rdi,rdi
je        short M00_L00
mov       rcx,offset MT_System.Collections.Generic.SortedDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
mov       rcx,rbp
mov       rdx,rdi
mov       r8,rsi
call      qword ptr [7FFF54CA4C78]; System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
mov       [rsp+20],rbp
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFF546744C8]
mov       ecx,43
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54476D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546742B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542D6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
mov       [rbp-60],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,r8
test      rbx,rbx
je        near ptr M01_L21
mov       rdi,[rcx]
mov       rdx,rdi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       rax,[rax+40]
test      rax,rax
je        near ptr M01_L05
M01_L00
 
mov       rcx,rax
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,rsi
call      qword ptr [7FFF54CA59B0]; System.Collections.Generic.SortedDictionary`2+KeyValuePairComparer[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1)
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+48]
test      rcx,rcx
je        near ptr M01_L06
M01_L01
 
mov       rdx,rbx
call      qword ptr [7FFF540E4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L22
M01_L02
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L07
M01_L03
 
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,r14
call      qword ptr [7FFF54CA6838]; System.Collections.Generic.SortedSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1>)
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+58]
test      r11,r11
je        short M01_L08
M01_L04
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       short M01_L09
M01_L05
 
mov       rcx,rdx
mov       rdx,7FFF54DF0220
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
jmp       near ptr M01_L00
M01_L06
 
mov       rcx,rdi
mov       rdx,7FFF54DF0238
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L01
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFF54DF04C0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L03
M01_L08
 
mov       rcx,rdi
mov       rdx,7FFF54DF04E0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L04
M01_L09
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M01_L12
M01_L10
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+60]
test      r11,r11
je        near ptr M01_L17
M01_L11
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,[rbp+10]
mov       rdx,[rcx+18]
vmovdqu   xmm0,xmmword ptr [rbp-40]
vmovdqu   xmmword ptr [rbp-50],xmm0
mov       rcx,rdx
lea       rdx,[rbp-50]
cmp       [rcx],ecx
call      qword ptr [7FFF54C9F450]; System.Collections.Generic.TreeSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]].AddIfNotPresent(System.Collections.Generic.KeyValuePair`2)
mov       rax,[rbp-58]
M01_L12
 
cmp       rsi,r15
jne       short M01_L15
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M01_L18
M01_L13
 
mov       ecx,[r14+0C]
mov       rbx,[r14]
cmp       ecx,[rbx+38]
jae       short M01_L16
mov       rdx,[rbx+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L14
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L13
mov       rdx,[rcx]
mov       rbx,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,rbx
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L10
M01_L14
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L15
 
mov       rcx,rax
mov       r11,7FFF53FA1970
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L10
mov       rax,[rbp-58]
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp-58]
mov       ecx,[rbx+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       short M01_L19
M01_L17
 
mov       rcx,rdi
mov       rdx,7FFF54DF0500
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L11
M01_L18
 
call      qword ptr [7FFF54455E00]
int       3
M01_L19
 
cmp       rsi,r15
jne       near ptr M01_L27
M01_L20
 
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L21
 
mov       ecx,7ED
mov       rdx,7FFF54440658
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF542D6790]
int       3
M01_L22
 
mov       r15,[rsi+18]
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rdi
mov       rdx,7FFF54DF0220
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L24
 
mov       rdx,[r15+10]
call      qword ptr [7FFF540E4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
test      rax,rax
je        near ptr M01_L02
mov       rcx,[rax+8]
mov       rdx,[r14+8]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L02
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L25
jmp       short M01_L26
M01_L25
 
mov       rcx,rdi
mov       rdx,7FFF54DF04C0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L26
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rdx,[rsi+18]
mov       rcx,rbx
mov       r8,r14
call      qword ptr [7FFF54CA6868]
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L27
 
mov       rcx,rax
mov       r11,7FFF53FA1978
call      qword ptr [r11]
jmp       near ptr M01_L20
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M01_L28
mov       rax,[rbp-58]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L28
mov       rcx,rax
mov       r11,7FFF53FA1978
call      qword ptr [r11]
M01_L28
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF54195B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF54195B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFF54455D58]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,30359E20008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToSortedDictionaryComparerTest()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rcx,offset MT_DotNetTips.Spargine.Core.Collections.Generic.OrdinalStringComparer
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rdi,[rbx+280]
test      rdi,rdi
je        short M00_L00
mov       rcx,offset MT_System.Collections.Generic.SortedDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
mov       rcx,rbp
mov       rdx,rdi
mov       r8,rsi
call      qword ptr [7FFF54D9E2B0]; System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
mov       [rsp+20],rbp
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFF546644C8]
mov       ecx,43
mov       rdx,7FFF545DA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54466D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540D6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545DA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540D6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546642B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542C6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
mov       [rbp-60],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,r8
test      rbx,rbx
je        near ptr M01_L21
mov       rdi,[rcx]
mov       rdx,rdi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       rax,[rax+40]
test      rax,rax
je        near ptr M01_L05
M01_L00
 
mov       rcx,rax
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,rsi
call      qword ptr [7FFF54D9EFE8]; System.Collections.Generic.SortedDictionary`2+KeyValuePairComparer[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1)
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+48]
test      rcx,rcx
je        near ptr M01_L06
M01_L01
 
mov       rdx,rbx
call      qword ptr [7FFF540D4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L22
M01_L02
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L07
M01_L03
 
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,r14
call      qword ptr [7FFF54E44018]; System.Collections.Generic.SortedSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1>)
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+58]
test      r11,r11
je        short M01_L08
M01_L04
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       short M01_L09
M01_L05
 
mov       rcx,rdx
mov       rdx,7FFF54E62190
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
jmp       near ptr M01_L00
M01_L06
 
mov       rcx,rdi
mov       rdx,7FFF54E621A8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L01
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFF54E62430
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L03
M01_L08
 
mov       rcx,rdi
mov       rdx,7FFF54E62450
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L04
M01_L09
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M01_L12
M01_L10
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+60]
test      r11,r11
je        near ptr M01_L17
M01_L11
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,[rbp+10]
mov       rdx,[rcx+18]
vmovdqu   xmm0,xmmword ptr [rbp-40]
vmovdqu   xmmword ptr [rbp-50],xmm0
mov       rcx,rdx
lea       rdx,[rbp-50]
cmp       [rcx],ecx
call      qword ptr [7FFF54DBAEA0]; System.Collections.Generic.TreeSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]].AddIfNotPresent(System.Collections.Generic.KeyValuePair`2)
mov       rax,[rbp-58]
M01_L12
 
cmp       rsi,r15
jne       short M01_L15
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M01_L18
M01_L13
 
mov       ecx,[r14+0C]
mov       rbx,[r14]
cmp       ecx,[rbx+38]
jae       short M01_L16
mov       rdx,[rbx+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L14
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L13
mov       rdx,[rcx]
mov       rbx,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,rbx
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L10
M01_L14
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L15
 
mov       rcx,rax
mov       r11,7FFF53F91BB0
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L10
mov       rax,[rbp-58]
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp-58]
mov       ecx,[rbx+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       short M01_L19
M01_L17
 
mov       rcx,rdi
mov       rdx,7FFF54E62470
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L11
M01_L18
 
call      qword ptr [7FFF54445E00]
int       3
M01_L19
 
cmp       rsi,r15
jne       near ptr M01_L27
M01_L20
 
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L21
 
mov       ecx,7ED
mov       rdx,7FFF54430658
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF542C6790]
int       3
M01_L22
 
mov       r15,[rsi+18]
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rdi
mov       rdx,7FFF54E62190
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L24
 
mov       rdx,[r15+10]
call      qword ptr [7FFF540D4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
test      rax,rax
je        near ptr M01_L02
mov       rcx,[rax+8]
mov       rdx,[r14+8]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L02
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L25
jmp       short M01_L26
M01_L25
 
mov       rcx,rdi
mov       rdx,7FFF54E62430
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L26
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rdx,[rsi+18]
mov       rcx,rbx
mov       r8,r14
call      qword ptr [7FFF54E44048]
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L27
 
mov       rcx,rax
mov       r11,7FFF53F91BB8
call      qword ptr [r11]
jmp       near ptr M01_L20
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M01_L28
mov       rax,[rbp-58]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L28
mov       rcx,rax
mov       r11,7FFF53F91BB8
call      qword ptr [r11]
M01_L28
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF54185B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF54185B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFF54445D58]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,24C9AC50008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.UpsertDictionary02()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
mov       rdi,[rbx+50]
mov       rbp,[rdi+28]
test      rdi,rdi
je        short M00_L01
xor       ecx,ecx
test      rbp,rbp
setne     cl
test      ecx,ecx
je        short M00_L02
test      rsi,rsi
je        near ptr M00_L03
mov       rcx,rsi
mov       rdx,rbp
mov       r11,7FFF53FC10C8
call      qword ptr [r11]
test      eax,eax
je        short M00_L00
mov       rcx,rsi
mov       rdx,rbp
mov       r11,7FFF53FC10D8
call      qword ptr [r11]
M00_L00
 
mov       rcx,rsi
mov       r8,rdi
mov       rdx,rbp
mov       r11,7FFF53FC10D0
call      qword ptr [r11]
M00_L01
 
mov       [rsp+20],rsi
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L02
 
call      qword ptr [7FFF546944C8]
mov       ecx,1B3
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54496D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546942B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542F6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L03
 
call      qword ptr [7FFF546944C8]
mov       ecx,43
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54496D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546942B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542F6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M01_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M01_L02
test      rbx,rbx
je        short M01_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M01_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M01_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF541B5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF541B5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L01
 
call      qword ptr [7FFF54475D58]
int       3
M01_L02
 
test      rbx,rbx
je        short M01_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M01_L04
M01_L03
 
mov       rax,24FBC730008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.UpsertDictionary02()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
mov       rdi,[rbx+50]
mov       rbp,[rdi+28]
test      rdi,rdi
je        short M00_L01
xor       ecx,ecx
test      rbp,rbp
setne     cl
test      ecx,ecx
je        short M00_L02
test      rsi,rsi
je        near ptr M00_L03
mov       rcx,rsi
mov       rdx,rbp
mov       r11,7FFF53FC10C8
call      qword ptr [r11]
test      eax,eax
je        short M00_L00
mov       rcx,rsi
mov       rdx,rbp
mov       r11,7FFF53FC10D8
call      qword ptr [r11]
M00_L00
 
mov       rcx,rsi
mov       r8,rdi
mov       rdx,rbp
mov       r11,7FFF53FC10D0
call      qword ptr [r11]
M00_L01
 
mov       [rsp+20],rsi
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L02
 
call      qword ptr [7FFF546944C8]
mov       ecx,1B3
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54496D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546942B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542F6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L03
 
call      qword ptr [7FFF546944C8]
mov       ecx,43
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54496D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546942B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542F6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M01_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M01_L02
test      rbx,rbx
je        short M01_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M01_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M01_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF541B5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF541B5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L01
 
call      qword ptr [7FFF54475D58]
int       3
M01_L02
 
test      rbx,rbx
je        short M01_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M01_L04
M01_L03
 
mov       rax,29E9C710008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.UpsertDictionary02()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
mov       rdi,[rbx+50]
mov       rbp,[rdi+28]
test      rdi,rdi
je        short M00_L01
xor       ecx,ecx
test      rbp,rbp
setne     cl
test      ecx,ecx
je        short M00_L02
test      rsi,rsi
je        near ptr M00_L03
mov       rcx,rsi
mov       rdx,rbp
mov       r11,7FFF53FB10C8
call      qword ptr [r11]
test      eax,eax
je        short M00_L00
mov       rcx,rsi
mov       rdx,rbp
mov       r11,7FFF53FB10D8
call      qword ptr [r11]
M00_L00
 
mov       rcx,rsi
mov       r8,rdi
mov       rdx,rbp
mov       r11,7FFF53FB10D0
call      qword ptr [r11]
M00_L01
 
mov       [rsp+20],rsi
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L02
 
call      qword ptr [7FFF546844C8]
mov       ecx,1B3
mov       rdx,7FFF545FA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54486D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540F6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545FA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540F6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546842B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542E6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L03
 
call      qword ptr [7FFF546844C8]
mov       ecx,43
mov       rdx,7FFF545FA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54486D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540F6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545FA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540F6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546842B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542E6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M01_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M01_L02
test      rbx,rbx
je        short M01_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M01_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M01_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF541A5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF541A5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L01
 
call      qword ptr [7FFF54465D58]
int       3
M01_L02
 
test      rbx,rbx
je        short M01_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M01_L04
M01_L03
 
mov       rax,1AE95060008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.UpsertDictionary02()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
mov       rdi,[rbx+50]
mov       rbp,[rdi+28]
test      rdi,rdi
je        short M00_L01
xor       ecx,ecx
test      rbp,rbp
setne     cl
test      ecx,ecx
je        short M00_L02
test      rsi,rsi
je        near ptr M00_L03
mov       rcx,rsi
mov       rdx,rbp
mov       r11,7FFF53FA10C8
call      qword ptr [r11]
test      eax,eax
je        short M00_L00
mov       rcx,rsi
mov       rdx,rbp
mov       r11,7FFF53FA10D8
call      qword ptr [r11]
M00_L00
 
mov       rcx,rsi
mov       r8,rdi
mov       rdx,rbp
mov       r11,7FFF53FA10D0
call      qword ptr [r11]
M00_L01
 
mov       [rsp+20],rsi
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L02
 
call      qword ptr [7FFF546744C8]
mov       ecx,1B3
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54476D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546742B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542D6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L03
 
call      qword ptr [7FFF546744C8]
mov       ecx,43
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54476D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546742B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542D6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M01_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M01_L02
test      rbx,rbx
je        short M01_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M01_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M01_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF54195B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF54195B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L01
 
call      qword ptr [7FFF54455D58]
int       3
M01_L02
 
test      rbx,rbx
je        short M01_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M01_L04
M01_L03
 
mov       rax,2E0690D0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.UpsertDictionary02()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
mov       rdi,[rbx+50]
mov       rbp,[rdi+28]
test      rdi,rdi
je        short M00_L01
xor       ecx,ecx
test      rbp,rbp
setne     cl
test      ecx,ecx
je        short M00_L02
test      rsi,rsi
je        near ptr M00_L03
mov       rcx,rsi
mov       rdx,rbp
mov       r11,7FFF53FB10C8
call      qword ptr [r11]
test      eax,eax
je        short M00_L00
mov       rcx,rsi
mov       rdx,rbp
mov       r11,7FFF53FB10D8
call      qword ptr [r11]
M00_L00
 
mov       rcx,rsi
mov       r8,rdi
mov       rdx,rbp
mov       r11,7FFF53FB10D0
call      qword ptr [r11]
M00_L01
 
mov       [rsp+20],rsi
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L02
 
call      qword ptr [7FFF546844C8]
mov       ecx,1B3
mov       rdx,7FFF545FA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54486D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540F6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545FA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540F6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546842B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542E6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L03
 
call      qword ptr [7FFF546844C8]
mov       ecx,43
mov       rdx,7FFF545FA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54486D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540F6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545FA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540F6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546842B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542E6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M01_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M01_L02
test      rbx,rbx
je        short M01_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M01_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M01_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF541A5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF541A5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L01
 
call      qword ptr [7FFF54465D58]
int       3
M01_L02
 
test      rbx,rbx
je        short M01_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M01_L04
M01_L03
 
mov       rax,21E5A850008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.UpsertDictionary02()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
mov       rdi,[rbx+50]
mov       rbp,[rdi+28]
test      rdi,rdi
je        short M00_L01
xor       ecx,ecx
test      rbp,rbp
setne     cl
test      ecx,ecx
je        short M00_L02
test      rsi,rsi
je        near ptr M00_L03
mov       rcx,rsi
mov       rdx,rbp
mov       r11,7FFF53FA11C0
call      qword ptr [r11]
test      eax,eax
je        short M00_L00
mov       rcx,rsi
mov       rdx,rbp
mov       r11,7FFF53FA11D0
call      qword ptr [r11]
M00_L00
 
mov       rcx,rsi
mov       r8,rdi
mov       rdx,rbp
mov       r11,7FFF53FA11C8
call      qword ptr [r11]
M00_L01
 
mov       [rsp+20],rsi
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L02
 
call      qword ptr [7FFF546744C8]
mov       ecx,1B3
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54476D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546742B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542D6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L03
 
call      qword ptr [7FFF546744C8]
mov       ecx,43
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54476D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546742B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542D6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M01_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M01_L02
test      rbx,rbx
je        short M01_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M01_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M01_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF54195B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF54195B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L01
 
call      qword ptr [7FFF54455D58]
int       3
M01_L02
 
test      rbx,rbx
je        short M01_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M01_L04
M01_L03
 
mov       rax,15990A20008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.UpsertDictionary02()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
mov       rdi,[rbx+50]
mov       rbp,[rdi+28]
test      rdi,rdi
je        short M00_L01
xor       ecx,ecx
test      rbp,rbp
setne     cl
test      ecx,ecx
je        short M00_L02
test      rsi,rsi
je        near ptr M00_L03
mov       rcx,rsi
mov       rdx,rbp
mov       r11,7FFF53FC1978
call      qword ptr [r11]
test      eax,eax
je        short M00_L00
mov       rcx,rsi
mov       rdx,rbp
mov       r11,7FFF53FC1988
call      qword ptr [r11]
M00_L00
 
mov       rcx,rsi
mov       r8,rdi
mov       rdx,rbp
mov       r11,7FFF53FC1980
call      qword ptr [r11]
M00_L01
 
mov       [rsp+20],rsi
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L02
 
call      qword ptr [7FFF546944C8]
mov       ecx,1B3
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54496D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546942B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542F6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L03
 
call      qword ptr [7FFF546944C8]
mov       ecx,43
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54496D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546942B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542F6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M01_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M01_L02
test      rbx,rbx
je        short M01_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M01_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M01_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF541B5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF541B5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L01
 
call      qword ptr [7FFF54475D58]
int       3
M01_L02
 
test      rbx,rbx
je        short M01_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M01_L04
M01_L03
 
mov       rax,24C2D160008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.UpsertDictionary02()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
mov       rdi,[rbx+50]
mov       rbp,[rdi+28]
test      rdi,rdi
je        short M00_L01
xor       ecx,ecx
test      rbp,rbp
setne     cl
test      ecx,ecx
je        short M00_L02
test      rsi,rsi
je        near ptr M00_L03
mov       rcx,rsi
mov       rdx,rbp
mov       r11,7FFF53FC1BA8
call      qword ptr [r11]
test      eax,eax
je        short M00_L00
mov       rcx,rsi
mov       rdx,rbp
mov       r11,7FFF53FC1BB8
call      qword ptr [r11]
M00_L00
 
mov       rcx,rsi
mov       r8,rdi
mov       rdx,rbp
mov       r11,7FFF53FC1BB0
call      qword ptr [r11]
M00_L01
 
mov       [rsp+20],rsi
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L02
 
call      qword ptr [7FFF546944C8]
mov       ecx,1B3
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54496D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546942B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542F6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L03
 
call      qword ptr [7FFF546944C8]
mov       ecx,43
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54496D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546942B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542F6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M01_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M01_L02
test      rbx,rbx
je        short M01_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M01_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M01_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF541B5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF541B5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L01
 
call      qword ptr [7FFF54475D58]
int       3
M01_L02
 
test      rbx,rbx
je        short M01_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M01_L04
M01_L03
 
mov       rax,27D88D20008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToConcurrentDictionary()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
xor       eax,eax
mov       [rsp+30],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rdi,offset MT_System.Collections.Concurrent.ConcurrentDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rcx,rdi
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
mov       rdx,rsi
mov       rcx,rdi
call      qword ptr [7FFF5459E070]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].GetCapacityFromCollection(System.Collections.Generic.IEnumerable`1>)
mov       r8d,eax
xor       ecx,ecx
mov       [rsp+20],rcx
mov       rcx,rbp
mov       edx,0C
xor       r9d,r9d
call      qword ptr [7FFF5459E058]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, Int32, Boolean, System.Collections.Generic.IEqualityComparer`1)
mov       rcx,rbp
mov       rdx,rsi
call      qword ptr [7FFF5459E0B8]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].InitializeFromCollection(System.Collections.Generic.IEnumerable`1>)
mov       [rsp+30],rbp
mov       rbx,[rbx+18]
mov       rdx,[rsp+30]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFF546844C8]
mov       ecx,43
mov       rdx,7FFF545FA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54486D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540F6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545FA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540F6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546842B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542E6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].GetCapacityFromCollection(System.Collections.Generic.IEnumerable`1>)
push      rdi
push      rsi
push      rbx
sub       rsp,30
mov       [rsp+28],rcx
mov       rbx,rcx
mov       rsi,rdx
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0C8]
test      rcx,rcx
je        short M01_L04
M01_L00
 
mov       rdx,rsi
call      qword ptr [7FFF540F4348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       rdi,rax
test      rdi,rdi
je        short M01_L05
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+0D0]
test      r11,r11
je        short M01_L03
M01_L01
 
mov       rcx,rdi
call      qword ptr [r11]
mov       ecx,1F
cmp       eax,1F
cmovg     ecx,eax
mov       eax,ecx
M01_L02
 
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M01_L03
 
mov       rcx,rbx
mov       rdx,7FFF54D3ED30
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L01
M01_L04
 
mov       rcx,rbx
mov       rdx,7FFF54D3ED10
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       short M01_L00
M01_L05
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0D8]
test      rcx,rcx
je        short M01_L07
M01_L06
 
mov       rdx,rsi
call      qword ptr [7FFF540F4330]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfAny(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       short M01_L08
mov       eax,1F
jmp       short M01_L02
M01_L07
 
mov       rcx,rbx
mov       rdx,7FFF54D3ED50
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       short M01_L06
M01_L08
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+0E0]
test      r11,r11
je        short M01_L09
jmp       short M01_L10
M01_L09
 
mov       rcx,rbx
mov       rdx,7FFF54D3ED70
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L10
 
mov       rcx,rsi
call      qword ptr [r11]
mov       ecx,1F
cmp       eax,1F
cmovg     ecx,eax
mov       eax,ecx
jmp       near ptr M01_L02
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, Int32, Boolean, System.Collections.Generic.IEqualityComparer`1)
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
mov       [rsp+30],rcx
mov       rsi,rcx
mov       edi,edx
mov       ebx,r8d
mov       ebp,r9d
mov       r14,[rsp+0A0]
test      edi,edi
jle       near ptr M02_L15
test      ebx,ebx
jl        near ptr M02_L17
M02_L00
 
cmp       ebx,edi
cmovl     ebx,edi
mov       ecx,ebx
call      qword ptr [7FFF5459E760]; System.Collections.HashHelpers.GetPrime(Int32)
mov       ebx,eax
movsxd    rdx,edi
mov       rcx,offset MT_System.Object[]
call      CORINFO_HELP_NEWARR_1_OBJ
mov       r15,rax
mov       r13d,[r15+8]
test      r13d,r13d
je        near ptr M02_L23
lea       rcx,[r15+10]
mov       rdx,r15
call      CORINFO_HELP_ASSIGN_REF
mov       edi,1
cmp       r13d,1
jle       short M02_L02
mov       r12,offset MT_System.Object
M02_L01
 
mov       rcx,r12
call      CORINFO_HELP_NEWSFAST
mov       ecx,edi
lea       rcx,[r15+rcx*8+10]
mov       rdx,rax
call      CORINFO_HELP_ASSIGN_REF
inc       edi
cmp       r13d,edi
jg        short M02_L01
M02_L02
 
mov       edx,r13d
mov       rcx,offset MT_System.Int32[]
call      CORINFO_HELP_NEWARR_1_VC
mov       rdi,rax
mov       r12,[rsi]
mov       rcx,r12
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       rax,[rdx+0A8]
test      rax,rax
je        short M02_L03
mov       rcx,rax
jmp       short M02_L04
M02_L03
 
mov       rdx,7FFF54D3E2B8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L04
 
movsxd    rdx,ebx
call      CORINFO_HELP_NEWARR_1_VC
mov       rbx,rax
test      r14,r14
jne       short M02_L07
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B0]
test      rcx,rcx
je        short M02_L05
jmp       short M02_L06
M02_L05
 
mov       rcx,r12
mov       rdx,7FFF54D3E2D0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L06
 
call      qword ptr [7FFF540FFC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
mov       r14,rax
M02_L07
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rdx,offset MT_System.String
cmp       [rcx],rdx
jne       near ptr M02_L20
mov       rcx,2BD87001D60
cmp       r14,[rcx]
jne       near ptr M02_L18
mov       rcx,2BD87001960
mov       rax,[rcx]
M02_L08
 
mov       r8,rax
mov       [rsp+28],r8
test      r8,r8
mov       r8,[rsp+28]
je        near ptr M02_L20
M02_L09
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0C0]
test      rcx,rcx
je        short M02_L10
jmp       short M02_L11
M02_L10
 
mov       [rsp+28],r8
mov       rcx,r12
mov       rdx,7FFF54D3E2F8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
mov       r8,[rsp+28]
M02_L11
 
mov       rdx,r8
call      qword ptr [7FFF540F4390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       r14,rax
M02_L12
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B8]
test      rcx,rcx
je        short M02_L13
jmp       short M02_L14
M02_L13
 
mov       rcx,r12
mov       rdx,7FFF54D3E2E0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L14
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
lea       rcx,[r12+10]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+18]
mov       rdx,r15
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+20]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+8]
mov       rdx,r14
call      CORINFO_HELP_ASSIGN_REF
mov       rax,0FFFFFFFFFFFFFFFF
mov       r14d,[rbx+8]
mov       ecx,r14d
xor       edx,edx
div       rcx
inc       rax
mov       [r12+28],rax
lea       rcx,[rsi+8]
mov       rdx,r12
call      CORINFO_HELP_ASSIGN_REF
mov       [rsi+14],bpl
mov       eax,r14d
xor       edx,edx
div       r13d
mov       [rsi+10],eax
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M02_L15
 
cmp       edi,0FFFFFFFF
je        short M02_L16
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       ecx,0B76
mov       rdx,7FFF545A9A40
call      CORINFO_HELP_STRCNS
mov       rbx,rax
call      qword ptr [7FFF547D5C50]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rdi
call      qword ptr [7FFF541AD470]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M02_L16
 
cmp       [rsi],esi
mov       edi,0C
test      ebx,ebx
jge       near ptr M02_L00
M02_L17
 
mov       ecx,0B98
mov       rdx,7FFF545A9A40
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,ebx
call      qword ptr [7FFF54BBD188]
int       3
M02_L18
 
mov       rcx,2BD870002D8
cmp       r14,[rcx]
jne       short M02_L19
mov       rcx,2BD87001968
mov       rax,[rcx]
mov       r8,rax
mov       rax,r8
jmp       near ptr M02_L08
M02_L19
 
mov       r8,2BD870002E0
xor       ecx,ecx
mov       rdx,2BD87001970
cmp       r14,[r8]
mov       r8,[rdx]
cmovne    r8,rcx
mov       rcx,r8
test      rcx,rcx
mov       r8,rcx
jne       near ptr M02_L09
M02_L20
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B0]
test      rcx,rcx
je        short M02_L21
jmp       short M02_L22
M02_L21
 
mov       rcx,r12
mov       rdx,7FFF54D3E2D0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L22
 
call      qword ptr [7FFF540FFC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
cmp       rax,r14
jne       near ptr M02_L12
mov       byte ptr [rsi+15],1
jmp       near ptr M02_L12
M02_L23
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].InitializeFromCollection(System.Collections.Generic.IEnumerable`1>)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,88
lea       rbp,[rsp+0B0]
vxorps    xmm4,xmm4,xmm4
vmovdqu   xmmword ptr [rbp-48],xmm4
xor       eax,eax
mov       [rbp-38],rax
mov       [rbp-70],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,[rcx]
mov       rdx,rsi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+0E8]
test      r11,r11
je        near ptr M03_L12
M03_L00
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
mov       rbx,[rax]
mov       rdi,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M03_L03
M03_L01
 
mov       rcx,[rsi+30]
mov       rcx,[rcx]
mov       r11,[rcx+0F0]
test      r11,r11
je        near ptr M03_L08
M03_L02
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
cmp       qword ptr [rbp-40],0
je        near ptr M03_L09
mov       rcx,[rbp+10]
mov       rdx,[rcx+8]
mov       r8,[rbp-40]
mov       byte ptr [rbp-50],0
xor       r9d,r9d
mov       [rbp-4C],r9d
mov       r9,[rbp-38]
mov       [rsp+20],r9
xor       r9d,r9d
mov       [rsp+28],r9d
mov       [rsp+30],r9d
lea       r9,[rbp-48]
mov       [rsp+38],r9
mov       r9,[rbp-50]
call      qword ptr [7FFF5459E250]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].TryAddInternal(Tables, System.__Canon, System.Nullable`1, System.__Canon, Boolean, Boolean, System.__Canon ByRef)
test      eax,eax
je        near ptr M03_L10
M03_L03
 
mov       rax,[rbp-58]
cmp       rbx,rdi
jne       short M03_L06
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M03_L11
M03_L04
 
mov       ecx,[r14+0C]
mov       r15,[r14]
cmp       ecx,[r15+38]
jae       short M03_L07
mov       rdx,[r15+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M03_L05
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M03_L04
mov       rdx,[rcx]
mov       r15,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,r15
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M03_L01
M03_L05
 
call      CORINFO_HELP_RNGCHKFAIL
M03_L06
 
mov       rcx,rax
mov       r11,7FFF53FB10E8
call      qword ptr [r11]
test      eax,eax
jne       near ptr M03_L01
mov       rax,[rbp-58]
jmp       near ptr M03_L13
M03_L07
 
mov       rax,[rbp-58]
mov       ecx,[r15+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       near ptr M03_L13
M03_L08
 
mov       rcx,rsi
mov       rdx,7FFF54D3EEB0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M03_L02
M03_L09
 
mov       ecx,1
mov       rdx,7FFF545A9A40
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF547D6190]
int       3
M03_L10
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
call      qword ptr [7FFF547D5C38]
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540FF708]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M03_L11
 
call      qword ptr [7FFF54465E00]
int       3
M03_L12
 
mov       rcx,rdx
mov       rdx,7FFF54D3EE90
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M03_L00
M03_L13
 
cmp       rbx,rdi
jne       short M03_L15
mov       rcx,[rbp+10]
cmp       dword ptr [rcx+10],0
je        short M03_L16
M03_L14
 
add       rsp,88
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L15
 
mov       rcx,rax
mov       r11,7FFF53FB10F0
call      qword ptr [r11]
mov       rcx,[rbp+10]
cmp       dword ptr [rcx+10],0
jne       short M03_L14
M03_L16
 
mov       rcx,[rbp+10]
mov       rax,[rcx+8]
mov       [rbp-60],rax
mov       rdx,[rax+10]
mov       eax,[rdx+8]
mov       rdx,[rbp-60]
mov       r11,[rdx+18]
xor       edx,edx
div       dword ptr [r11+8]
mov       [rcx+10],eax
jmp       short M03_L14
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,48
mov       rbp,[rcx+40]
mov       [rsp+40],rbp
lea       rbp,[rbp+0B0]
cmp       qword ptr [rbp-58],0
je        short M03_L17
mov       rax,[rbp-58]
mov       rbx,[rax]
mov       rdi,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rbx,rdi
je        short M03_L17
mov       rcx,rax
mov       r11,7FFF53FB10F0
call      qword ptr [r11]
M03_L17
 
nop
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M04_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M04_L02
test      rbx,rbx
je        short M04_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M04_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M04_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF541A5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF541A5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L01
 
call      qword ptr [7FFF54465D58]
int       3
M04_L02
 
test      rbx,rbx
je        short M04_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M04_L04
M04_L03
 
mov       rax,2FE14FA0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToConcurrentDictionary()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
xor       eax,eax
mov       [rsp+30],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rdi,offset MT_System.Collections.Concurrent.ConcurrentDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rcx,rdi
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
mov       rdx,rsi
mov       rcx,rdi
call      qword ptr [7FFF545AE070]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].GetCapacityFromCollection(System.Collections.Generic.IEnumerable`1>)
mov       r8d,eax
xor       ecx,ecx
mov       [rsp+20],rcx
mov       rcx,rbp
mov       edx,0C
xor       r9d,r9d
call      qword ptr [7FFF545AE058]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, Int32, Boolean, System.Collections.Generic.IEqualityComparer`1)
mov       rcx,rbp
mov       rdx,rsi
call      qword ptr [7FFF545AE0B8]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].InitializeFromCollection(System.Collections.Generic.IEnumerable`1>)
mov       [rsp+30],rbp
mov       rbx,[rbx+18]
mov       rdx,[rsp+30]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFF546944C8]
mov       ecx,43
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54496D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546942B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542F6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].GetCapacityFromCollection(System.Collections.Generic.IEnumerable`1>)
push      rdi
push      rsi
push      rbx
sub       rsp,30
mov       [rsp+28],rcx
mov       rbx,rcx
mov       rsi,rdx
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0C8]
test      rcx,rcx
je        short M01_L03
M01_L00
 
mov       rdx,rsi
call      qword ptr [7FFF54104348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       rdi,rax
test      rdi,rdi
je        near ptr M01_L09
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+0D0]
test      r11,r11
je        short M01_L04
M01_L01
 
mov       rcx,rdi
call      qword ptr [r11]
mov       ecx,1F
cmp       eax,1F
cmovg     ecx,eax
mov       eax,ecx
M01_L02
 
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M01_L03
 
mov       rcx,rbx
mov       rdx,7FFF54D80480
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       short M01_L00
M01_L04
 
mov       rcx,rbx
mov       rdx,7FFF54D804A0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L01
M01_L05
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+0E0]
test      r11,r11
je        short M01_L06
jmp       short M01_L07
M01_L06
 
mov       rcx,rbx
mov       rdx,7FFF54D804E0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L07
 
mov       rcx,rsi
call      qword ptr [r11]
mov       ecx,1F
cmp       eax,1F
cmovg     ecx,eax
mov       eax,ecx
jmp       short M01_L02
M01_L08
 
mov       eax,1F
jmp       short M01_L02
M01_L09
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0D8]
test      rcx,rcx
je        short M01_L10
jmp       short M01_L11
M01_L10
 
mov       rcx,rbx
mov       rdx,7FFF54D804C0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L11
 
mov       rdx,rsi
call      qword ptr [7FFF54104330]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfAny(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L05
jmp       short M01_L08
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, Int32, Boolean, System.Collections.Generic.IEqualityComparer`1)
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
mov       [rsp+30],rcx
mov       rsi,rcx
mov       edi,edx
mov       ebx,r8d
mov       r14d,r9d
mov       rbp,[rsp+0A0]
test      edi,edi
jle       near ptr M02_L15
test      ebx,ebx
jl        near ptr M02_L17
M02_L00
 
cmp       ebx,edi
cmovl     ebx,edi
mov       ecx,ebx
call      qword ptr [7FFF545AE760]; System.Collections.HashHelpers.GetPrime(Int32)
mov       ebx,eax
movsxd    rdx,edi
mov       rcx,offset MT_System.Object[]
call      CORINFO_HELP_NEWARR_1_OBJ
mov       r15,rax
mov       r13d,[r15+8]
test      r13d,r13d
je        near ptr M02_L23
lea       rcx,[r15+10]
mov       rdx,r15
call      CORINFO_HELP_ASSIGN_REF
mov       edi,1
cmp       r13d,1
jle       short M02_L02
mov       r12,offset MT_System.Object
M02_L01
 
mov       rcx,r12
call      CORINFO_HELP_NEWSFAST
mov       ecx,edi
lea       rcx,[r15+rcx*8+10]
mov       rdx,rax
call      CORINFO_HELP_ASSIGN_REF
inc       edi
cmp       r13d,edi
jg        short M02_L01
M02_L02
 
mov       edx,r13d
mov       rcx,offset MT_System.Int32[]
call      CORINFO_HELP_NEWARR_1_VC
mov       rdi,rax
mov       r12,[rsi]
mov       rcx,r12
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       rax,[rdx+0A8]
test      rax,rax
je        short M02_L03
mov       rcx,rax
jmp       short M02_L04
M02_L03
 
mov       rdx,7FFF54D5F510
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L04
 
movsxd    rdx,ebx
call      CORINFO_HELP_NEWARR_1_VC
mov       rbx,rax
test      rbp,rbp
jne       short M02_L07
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B0]
test      rcx,rcx
je        short M02_L05
jmp       short M02_L06
M02_L05
 
mov       rcx,r12
mov       rdx,7FFF54D5F528
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L06
 
call      qword ptr [7FFF5410FC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
mov       rbp,rax
M02_L07
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rdx,offset MT_System.String
cmp       [rcx],rdx
jne       near ptr M02_L20
mov       rcx,25667C01D60
cmp       rbp,[rcx]
jne       near ptr M02_L18
mov       rcx,25667C01960
mov       rax,[rcx]
M02_L08
 
mov       r8,rax
mov       [rsp+28],r8
test      r8,r8
mov       r8,[rsp+28]
je        near ptr M02_L20
M02_L09
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0C0]
test      rcx,rcx
je        short M02_L10
jmp       short M02_L11
M02_L10
 
mov       [rsp+28],r8
mov       rcx,r12
mov       rdx,7FFF54D5F550
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
mov       r8,[rsp+28]
M02_L11
 
mov       rdx,r8
call      qword ptr [7FFF54104390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       rbp,rax
M02_L12
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B8]
test      rcx,rcx
je        short M02_L13
jmp       short M02_L14
M02_L13
 
mov       rcx,r12
mov       rdx,7FFF54D5F538
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L14
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
lea       rcx,[r12+10]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+18]
mov       rdx,r15
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+20]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+8]
mov       rdx,rbp
call      CORINFO_HELP_ASSIGN_REF
mov       rax,0FFFFFFFFFFFFFFFF
mov       ebp,[rbx+8]
mov       ecx,ebp
xor       edx,edx
div       rcx
inc       rax
mov       [r12+28],rax
lea       rcx,[rsi+8]
mov       rdx,r12
call      CORINFO_HELP_ASSIGN_REF
mov       [rsi+14],r14b
mov       eax,ebp
xor       edx,edx
div       r13d
mov       [rsi+10],eax
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M02_L15
 
cmp       edi,0FFFFFFFF
je        short M02_L16
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       ecx,0B76
mov       rdx,7FFF545B9A40
call      CORINFO_HELP_STRCNS
mov       rbx,rax
call      qword ptr [7FFF547E5C50]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rdi
call      qword ptr [7FFF541BD470]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M02_L16
 
cmp       [rsi],esi
mov       edi,0C
test      ebx,ebx
jge       near ptr M02_L00
M02_L17
 
mov       ecx,0B98
mov       rdx,7FFF545B9A40
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,ebx
call      qword ptr [7FFF54BCF240]
int       3
M02_L18
 
mov       rcx,25667C002D8
cmp       rbp,[rcx]
jne       short M02_L19
mov       rcx,25667C01968
mov       rax,[rcx]
mov       r8,rax
mov       rax,r8
jmp       near ptr M02_L08
M02_L19
 
mov       r8,25667C002E0
xor       ecx,ecx
mov       rdx,25667C01970
cmp       rbp,[r8]
mov       r8,[rdx]
cmovne    r8,rcx
mov       rcx,r8
test      rcx,rcx
mov       r8,rcx
jne       near ptr M02_L09
M02_L20
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B0]
test      rcx,rcx
je        short M02_L21
jmp       short M02_L22
M02_L21
 
mov       rcx,r12
mov       rdx,7FFF54D5F528
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L22
 
call      qword ptr [7FFF5410FC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
cmp       rax,rbp
jne       near ptr M02_L12
mov       byte ptr [rsi+15],1
jmp       near ptr M02_L12
M02_L23
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].InitializeFromCollection(System.Collections.Generic.IEnumerable`1>)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,88
lea       rbp,[rsp+0B0]
vxorps    xmm4,xmm4,xmm4
vmovdqu   xmmword ptr [rbp-48],xmm4
xor       eax,eax
mov       [rbp-38],rax
mov       [rbp-70],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,[rcx]
mov       rdx,rsi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+0E8]
test      r11,r11
je        near ptr M03_L12
M03_L00
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
mov       rbx,[rax]
mov       rdi,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M03_L03
M03_L01
 
mov       rcx,[rsi+30]
mov       rcx,[rcx]
mov       r11,[rcx+0F0]
test      r11,r11
je        near ptr M03_L08
M03_L02
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
cmp       qword ptr [rbp-40],0
je        near ptr M03_L09
mov       rcx,[rbp+10]
mov       rdx,[rcx+8]
mov       r8,[rbp-40]
mov       byte ptr [rbp-50],0
xor       r9d,r9d
mov       [rbp-4C],r9d
mov       r9,[rbp-38]
mov       [rsp+20],r9
xor       r9d,r9d
mov       [rsp+28],r9d
mov       [rsp+30],r9d
lea       r9,[rbp-48]
mov       [rsp+38],r9
mov       r9,[rbp-50]
call      qword ptr [7FFF545AE250]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].TryAddInternal(Tables, System.__Canon, System.Nullable`1, System.__Canon, Boolean, Boolean, System.__Canon ByRef)
test      eax,eax
je        near ptr M03_L10
M03_L03
 
mov       rax,[rbp-58]
cmp       rbx,rdi
jne       short M03_L06
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M03_L11
M03_L04
 
mov       ecx,[r14+0C]
mov       r15,[r14]
cmp       ecx,[r15+38]
jae       short M03_L07
mov       rdx,[r15+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M03_L05
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M03_L04
mov       rdx,[rcx]
mov       r15,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,r15
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M03_L01
M03_L05
 
call      CORINFO_HELP_RNGCHKFAIL
M03_L06
 
mov       rcx,rax
mov       r11,7FFF53FC10E8
call      qword ptr [r11]
test      eax,eax
jne       near ptr M03_L01
mov       rax,[rbp-58]
jmp       near ptr M03_L13
M03_L07
 
mov       rax,[rbp-58]
mov       ecx,[r15+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       near ptr M03_L13
M03_L08
 
mov       rcx,rsi
mov       rdx,7FFF54D80620
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M03_L02
M03_L09
 
mov       ecx,1
mov       rdx,7FFF545B9A40
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF547E6190]
int       3
M03_L10
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
call      qword ptr [7FFF547E5C38]
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF5410F708]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M03_L11
 
call      qword ptr [7FFF54475E00]
int       3
M03_L12
 
mov       rcx,rdx
mov       rdx,7FFF54D80600
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M03_L00
M03_L13
 
cmp       rbx,rdi
jne       short M03_L15
mov       rcx,[rbp+10]
cmp       dword ptr [rcx+10],0
je        short M03_L16
M03_L14
 
add       rsp,88
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L15
 
mov       rcx,rax
mov       r11,7FFF53FC10F0
call      qword ptr [r11]
mov       rcx,[rbp+10]
cmp       dword ptr [rcx+10],0
jne       short M03_L14
M03_L16
 
mov       rcx,[rbp+10]
mov       rax,[rcx+8]
mov       [rbp-60],rax
mov       rdx,[rax+10]
mov       eax,[rdx+8]
mov       rdx,[rbp-60]
mov       r11,[rdx+18]
xor       edx,edx
div       dword ptr [r11+8]
mov       [rcx+10],eax
jmp       short M03_L14
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,48
mov       rbp,[rcx+40]
mov       [rsp+40],rbp
lea       rbp,[rbp+0B0]
cmp       qword ptr [rbp-58],0
je        short M03_L17
mov       rax,[rbp-58]
mov       rbx,[rax]
mov       rdi,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rbx,rdi
je        short M03_L17
mov       rcx,rax
mov       r11,7FFF53FC10F0
call      qword ptr [r11]
M03_L17
 
nop
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M04_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M04_L02
test      rbx,rbx
je        short M04_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M04_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M04_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF541B5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF541B5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L01
 
call      qword ptr [7FFF54475D58]
int       3
M04_L02
 
test      rbx,rbx
je        short M04_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M04_L04
M04_L03
 
mov       rax,296F9AA0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToConcurrentDictionary()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
xor       eax,eax
mov       [rsp+30],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rdi,offset MT_System.Collections.Concurrent.ConcurrentDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rcx,rdi
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
mov       rdx,rsi
mov       rcx,rdi
call      qword ptr [7FFF5457E070]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].GetCapacityFromCollection(System.Collections.Generic.IEnumerable`1>)
mov       r8d,eax
xor       ecx,ecx
mov       [rsp+20],rcx
mov       rcx,rbp
mov       edx,0C
xor       r9d,r9d
call      qword ptr [7FFF5457E058]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, Int32, Boolean, System.Collections.Generic.IEqualityComparer`1)
mov       rcx,rbp
mov       rdx,rsi
call      qword ptr [7FFF5457E0B8]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].InitializeFromCollection(System.Collections.Generic.IEnumerable`1>)
mov       [rsp+30],rbp
mov       rbx,[rbx+18]
mov       rdx,[rsp+30]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFF546644C8]
mov       ecx,43
mov       rdx,7FFF545DA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54466D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540D6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545DA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540D6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546642B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542C6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].GetCapacityFromCollection(System.Collections.Generic.IEnumerable`1>)
push      rdi
push      rsi
push      rbx
sub       rsp,30
mov       [rsp+28],rcx
mov       rbx,rcx
mov       rsi,rdx
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0C8]
test      rcx,rcx
je        short M01_L03
M01_L00
 
mov       rdx,rsi
call      qword ptr [7FFF540D4348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       rdi,rax
test      rdi,rdi
je        near ptr M01_L09
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+0D0]
test      r11,r11
je        short M01_L04
M01_L01
 
mov       rcx,rdi
call      qword ptr [r11]
mov       ecx,1F
cmp       eax,1F
cmovg     ecx,eax
mov       eax,ecx
M01_L02
 
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M01_L03
 
mov       rcx,rbx
mov       rdx,7FFF54D50608
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       short M01_L00
M01_L04
 
mov       rcx,rbx
mov       rdx,7FFF54D50628
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L01
M01_L05
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+0E0]
test      r11,r11
je        short M01_L06
jmp       short M01_L07
M01_L06
 
mov       rcx,rbx
mov       rdx,7FFF54D50668
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L07
 
mov       rcx,rsi
call      qword ptr [r11]
mov       ecx,1F
cmp       eax,1F
cmovg     ecx,eax
mov       eax,ecx
jmp       short M01_L02
M01_L08
 
mov       eax,1F
jmp       short M01_L02
M01_L09
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0D8]
test      rcx,rcx
je        short M01_L10
jmp       short M01_L11
M01_L10
 
mov       rcx,rbx
mov       rdx,7FFF54D50648
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L11
 
mov       rdx,rsi
call      qword ptr [7FFF540D4330]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfAny(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L05
jmp       short M01_L08
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, Int32, Boolean, System.Collections.Generic.IEqualityComparer`1)
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
mov       [rsp+30],rcx
mov       rsi,rcx
mov       edi,edx
mov       ebx,r8d
mov       r14d,r9d
mov       rbp,[rsp+0A0]
test      edi,edi
jle       near ptr M02_L15
test      ebx,ebx
jl        near ptr M02_L17
M02_L00
 
cmp       ebx,edi
cmovl     ebx,edi
mov       ecx,ebx
call      qword ptr [7FFF5457E760]; System.Collections.HashHelpers.GetPrime(Int32)
mov       ebx,eax
movsxd    rdx,edi
mov       rcx,offset MT_System.Object[]
call      CORINFO_HELP_NEWARR_1_OBJ
mov       r15,rax
mov       r13d,[r15+8]
test      r13d,r13d
je        near ptr M02_L23
lea       rcx,[r15+10]
mov       rdx,r15
call      CORINFO_HELP_ASSIGN_REF
mov       edi,1
cmp       r13d,1
jle       short M02_L02
mov       r12,offset MT_System.Object
M02_L01
 
mov       rcx,r12
call      CORINFO_HELP_NEWSFAST
mov       ecx,edi
lea       rcx,[r15+rcx*8+10]
mov       rdx,rax
call      CORINFO_HELP_ASSIGN_REF
inc       edi
cmp       r13d,edi
jg        short M02_L01
M02_L02
 
mov       edx,r13d
mov       rcx,offset MT_System.Int32[]
call      CORINFO_HELP_NEWARR_1_VC
mov       rdi,rax
mov       r12,[rsi]
mov       rcx,r12
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       rax,[rdx+0A8]
test      rax,rax
je        short M02_L03
mov       rcx,rax
jmp       short M02_L04
M02_L03
 
mov       rdx,7FFF54D2F5B8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L04
 
movsxd    rdx,ebx
call      CORINFO_HELP_NEWARR_1_VC
mov       rbx,rax
test      rbp,rbp
jne       short M02_L07
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B0]
test      rcx,rcx
je        short M02_L05
jmp       short M02_L06
M02_L05
 
mov       rcx,r12
mov       rdx,7FFF54D2F5D0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L06
 
call      qword ptr [7FFF540DFC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
mov       rbp,rax
M02_L07
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rdx,offset MT_System.String
cmp       [rcx],rdx
jne       near ptr M02_L20
mov       rcx,1EC84C01D60
cmp       rbp,[rcx]
jne       near ptr M02_L18
mov       rcx,1EC84C01960
mov       rax,[rcx]
M02_L08
 
mov       r8,rax
mov       [rsp+28],r8
test      r8,r8
mov       r8,[rsp+28]
je        near ptr M02_L20
M02_L09
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0C0]
test      rcx,rcx
je        short M02_L10
jmp       short M02_L11
M02_L10
 
mov       [rsp+28],r8
mov       rcx,r12
mov       rdx,7FFF54D2F5F8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
mov       r8,[rsp+28]
M02_L11
 
mov       rdx,r8
call      qword ptr [7FFF540D4390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       rbp,rax
M02_L12
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B8]
test      rcx,rcx
je        short M02_L13
jmp       short M02_L14
M02_L13
 
mov       rcx,r12
mov       rdx,7FFF54D2F5E0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L14
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
lea       rcx,[r12+10]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+18]
mov       rdx,r15
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+20]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+8]
mov       rdx,rbp
call      CORINFO_HELP_ASSIGN_REF
mov       rax,0FFFFFFFFFFFFFFFF
mov       ebp,[rbx+8]
mov       ecx,ebp
xor       edx,edx
div       rcx
inc       rax
mov       [r12+28],rax
lea       rcx,[rsi+8]
mov       rdx,r12
call      CORINFO_HELP_ASSIGN_REF
mov       [rsi+14],r14b
mov       eax,ebp
xor       edx,edx
div       r13d
mov       [rsi+10],eax
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M02_L15
 
cmp       edi,0FFFFFFFF
je        short M02_L16
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       ecx,0B76
mov       rdx,7FFF54589A40
call      CORINFO_HELP_STRCNS
mov       rbx,rax
call      qword ptr [7FFF547B5C50]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rdi
call      qword ptr [7FFF5418D470]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M02_L16
 
cmp       [rsi],esi
mov       edi,0C
test      ebx,ebx
jge       near ptr M02_L00
M02_L17
 
mov       ecx,0B98
mov       rdx,7FFF54589A40
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,ebx
call      qword ptr [7FFF54B9EF10]
int       3
M02_L18
 
mov       rcx,1EC84C002D8
cmp       rbp,[rcx]
jne       short M02_L19
mov       rcx,1EC84C01968
mov       rax,[rcx]
mov       r8,rax
mov       rax,r8
jmp       near ptr M02_L08
M02_L19
 
mov       r8,1EC84C002E0
xor       ecx,ecx
mov       rdx,1EC84C01970
cmp       rbp,[r8]
mov       r8,[rdx]
cmovne    r8,rcx
mov       rcx,r8
test      rcx,rcx
mov       r8,rcx
jne       near ptr M02_L09
M02_L20
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B0]
test      rcx,rcx
je        short M02_L21
jmp       short M02_L22
M02_L21
 
mov       rcx,r12
mov       rdx,7FFF54D2F5D0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L22
 
call      qword ptr [7FFF540DFC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
cmp       rax,rbp
jne       near ptr M02_L12
mov       byte ptr [rsi+15],1
jmp       near ptr M02_L12
M02_L23
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].InitializeFromCollection(System.Collections.Generic.IEnumerable`1>)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,88
lea       rbp,[rsp+0B0]
vxorps    xmm4,xmm4,xmm4
vmovdqu   xmmword ptr [rbp-48],xmm4
xor       eax,eax
mov       [rbp-38],rax
mov       [rbp-70],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,[rcx]
mov       rdx,rsi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+0E8]
test      r11,r11
je        near ptr M03_L12
M03_L00
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
mov       rbx,[rax]
mov       rdi,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M03_L03
M03_L01
 
mov       rcx,[rsi+30]
mov       rcx,[rcx]
mov       r11,[rcx+0F0]
test      r11,r11
je        near ptr M03_L08
M03_L02
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
cmp       qword ptr [rbp-40],0
je        near ptr M03_L09
mov       rcx,[rbp+10]
mov       rdx,[rcx+8]
mov       r8,[rbp-40]
mov       byte ptr [rbp-50],0
xor       r9d,r9d
mov       [rbp-4C],r9d
mov       r9,[rbp-38]
mov       [rsp+20],r9
xor       r9d,r9d
mov       [rsp+28],r9d
mov       [rsp+30],r9d
lea       r9,[rbp-48]
mov       [rsp+38],r9
mov       r9,[rbp-50]
call      qword ptr [7FFF5457E250]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].TryAddInternal(Tables, System.__Canon, System.Nullable`1, System.__Canon, Boolean, Boolean, System.__Canon ByRef)
test      eax,eax
je        near ptr M03_L10
M03_L03
 
mov       rax,[rbp-58]
cmp       rbx,rdi
jne       short M03_L06
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M03_L11
M03_L04
 
mov       ecx,[r14+0C]
mov       r15,[r14]
cmp       ecx,[r15+38]
jae       short M03_L07
mov       rdx,[r15+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M03_L05
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M03_L04
mov       rdx,[rcx]
mov       r15,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,r15
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M03_L01
M03_L05
 
call      CORINFO_HELP_RNGCHKFAIL
M03_L06
 
mov       rcx,rax
mov       r11,7FFF53F90FC8
call      qword ptr [r11]
test      eax,eax
jne       near ptr M03_L01
mov       rax,[rbp-58]
jmp       near ptr M03_L13
M03_L07
 
mov       rax,[rbp-58]
mov       ecx,[r15+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       near ptr M03_L13
M03_L08
 
mov       rcx,rsi
mov       rdx,7FFF54D507A8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M03_L02
M03_L09
 
mov       ecx,1
mov       rdx,7FFF54589A40
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF547B6190]
int       3
M03_L10
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
call      qword ptr [7FFF547B5C38]
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540DF708]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M03_L11
 
call      qword ptr [7FFF54445E00]
int       3
M03_L12
 
mov       rcx,rdx
mov       rdx,7FFF54D50788
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M03_L00
M03_L13
 
cmp       rbx,rdi
jne       short M03_L15
mov       rcx,[rbp+10]
cmp       dword ptr [rcx+10],0
je        short M03_L16
M03_L14
 
add       rsp,88
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L15
 
mov       rcx,rax
mov       r11,7FFF53F90FD0
call      qword ptr [r11]
mov       rcx,[rbp+10]
cmp       dword ptr [rcx+10],0
jne       short M03_L14
M03_L16
 
mov       rcx,[rbp+10]
mov       rax,[rcx+8]
mov       [rbp-60],rax
mov       rdx,[rax+10]
mov       eax,[rdx+8]
mov       rdx,[rbp-60]
mov       r11,[rdx+18]
xor       edx,edx
div       dword ptr [r11+8]
mov       [rcx+10],eax
jmp       short M03_L14
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,48
mov       rbp,[rcx+40]
mov       [rsp+40],rbp
lea       rbp,[rbp+0B0]
cmp       qword ptr [rbp-58],0
je        short M03_L17
mov       rax,[rbp-58]
mov       rbx,[rax]
mov       rdi,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rbx,rdi
je        short M03_L17
mov       rcx,rax
mov       r11,7FFF53F90FD0
call      qword ptr [r11]
M03_L17
 
nop
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M04_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M04_L02
test      rbx,rbx
je        short M04_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M04_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M04_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF54185B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF54185B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L01
 
call      qword ptr [7FFF54445D58]
int       3
M04_L02
 
test      rbx,rbx
je        short M04_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M04_L04
M04_L03
 
mov       rax,22D12B50008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToConcurrentDictionary()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
xor       eax,eax
mov       [rsp+30],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rdi,offset MT_System.Collections.Concurrent.ConcurrentDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rcx,rdi
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
mov       rdx,rsi
mov       rcx,rdi
call      qword ptr [7FFF5458E070]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].GetCapacityFromCollection(System.Collections.Generic.IEnumerable`1>)
mov       r8d,eax
xor       ecx,ecx
mov       [rsp+20],rcx
mov       rcx,rbp
mov       edx,0C
xor       r9d,r9d
call      qword ptr [7FFF5458E058]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, Int32, Boolean, System.Collections.Generic.IEqualityComparer`1)
mov       rcx,rbp
mov       rdx,rsi
call      qword ptr [7FFF5458E0B8]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].InitializeFromCollection(System.Collections.Generic.IEnumerable`1>)
mov       [rsp+30],rbp
mov       rbx,[rbx+18]
mov       rdx,[rsp+30]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFF546744C8]
mov       ecx,43
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54476D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546742B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542D6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].GetCapacityFromCollection(System.Collections.Generic.IEnumerable`1>)
push      rdi
push      rsi
push      rbx
sub       rsp,30
mov       [rsp+28],rcx
mov       rbx,rcx
mov       rsi,rdx
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0C8]
test      rcx,rcx
je        short M01_L03
M01_L00
 
mov       rdx,rsi
call      qword ptr [7FFF540E4348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       rdi,rax
test      rdi,rdi
je        near ptr M01_L09
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+0D0]
test      r11,r11
je        short M01_L04
M01_L01
 
mov       rcx,rdi
call      qword ptr [r11]
mov       ecx,1F
cmp       eax,1F
cmovg     ecx,eax
mov       eax,ecx
M01_L02
 
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M01_L03
 
mov       rcx,rbx
mov       rdx,7FFF54D603B0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       short M01_L00
M01_L04
 
mov       rcx,rbx
mov       rdx,7FFF54D603D0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L01
M01_L05
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+0E0]
test      r11,r11
je        short M01_L06
jmp       short M01_L07
M01_L06
 
mov       rcx,rbx
mov       rdx,7FFF54D60410
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L07
 
mov       rcx,rsi
call      qword ptr [r11]
mov       ecx,1F
cmp       eax,1F
cmovg     ecx,eax
mov       eax,ecx
jmp       short M01_L02
M01_L08
 
mov       eax,1F
jmp       short M01_L02
M01_L09
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0D8]
test      rcx,rcx
je        short M01_L10
jmp       short M01_L11
M01_L10
 
mov       rcx,rbx
mov       rdx,7FFF54D603F0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L11
 
mov       rdx,rsi
call      qword ptr [7FFF540E4330]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfAny(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L05
jmp       short M01_L08
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, Int32, Boolean, System.Collections.Generic.IEqualityComparer`1)
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
mov       [rsp+30],rcx
mov       rsi,rcx
mov       edi,edx
mov       ebx,r8d
mov       r14d,r9d
mov       rbp,[rsp+0A0]
test      edi,edi
jle       near ptr M02_L15
test      ebx,ebx
jl        near ptr M02_L17
M02_L00
 
cmp       ebx,edi
cmovl     ebx,edi
mov       ecx,ebx
call      qword ptr [7FFF5458E760]; System.Collections.HashHelpers.GetPrime(Int32)
mov       ebx,eax
movsxd    rdx,edi
mov       rcx,offset MT_System.Object[]
call      CORINFO_HELP_NEWARR_1_OBJ
mov       r15,rax
mov       r13d,[r15+8]
test      r13d,r13d
je        near ptr M02_L23
lea       rcx,[r15+10]
mov       rdx,r15
call      CORINFO_HELP_ASSIGN_REF
mov       edi,1
cmp       r13d,1
jle       short M02_L02
mov       r12,offset MT_System.Object
M02_L01
 
mov       rcx,r12
call      CORINFO_HELP_NEWSFAST
mov       ecx,edi
lea       rcx,[r15+rcx*8+10]
mov       rdx,rax
call      CORINFO_HELP_ASSIGN_REF
inc       edi
cmp       r13d,edi
jg        short M02_L01
M02_L02
 
mov       edx,r13d
mov       rcx,offset MT_System.Int32[]
call      CORINFO_HELP_NEWARR_1_VC
mov       rdi,rax
mov       r12,[rsi]
mov       rcx,r12
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       rax,[rdx+0A8]
test      rax,rax
je        short M02_L03
mov       rcx,rax
jmp       short M02_L04
M02_L03
 
mov       rdx,7FFF54D3F7C0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L04
 
movsxd    rdx,ebx
call      CORINFO_HELP_NEWARR_1_VC
mov       rbx,rax
test      rbp,rbp
jne       short M02_L07
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B0]
test      rcx,rcx
je        short M02_L05
jmp       short M02_L06
M02_L05
 
mov       rcx,r12
mov       rdx,7FFF54D3F7D8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L06
 
call      qword ptr [7FFF540EFC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
mov       rbp,rax
M02_L07
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rdx,offset MT_System.String
cmp       [rcx],rdx
jne       near ptr M02_L20
mov       rcx,1B3C2401D60
cmp       rbp,[rcx]
jne       near ptr M02_L18
mov       rcx,1B3C2401960
mov       rax,[rcx]
M02_L08
 
mov       r8,rax
mov       [rsp+28],r8
test      r8,r8
mov       r8,[rsp+28]
je        near ptr M02_L20
M02_L09
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0C0]
test      rcx,rcx
je        short M02_L10
jmp       short M02_L11
M02_L10
 
mov       [rsp+28],r8
mov       rcx,r12
mov       rdx,7FFF54D3F800
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
mov       r8,[rsp+28]
M02_L11
 
mov       rdx,r8
call      qword ptr [7FFF540E4390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       rbp,rax
M02_L12
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B8]
test      rcx,rcx
je        short M02_L13
jmp       short M02_L14
M02_L13
 
mov       rcx,r12
mov       rdx,7FFF54D3F7E8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L14
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
lea       rcx,[r12+10]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+18]
mov       rdx,r15
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+20]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+8]
mov       rdx,rbp
call      CORINFO_HELP_ASSIGN_REF
mov       rax,0FFFFFFFFFFFFFFFF
mov       ebp,[rbx+8]
mov       ecx,ebp
xor       edx,edx
div       rcx
inc       rax
mov       [r12+28],rax
lea       rcx,[rsi+8]
mov       rdx,r12
call      CORINFO_HELP_ASSIGN_REF
mov       [rsi+14],r14b
mov       eax,ebp
xor       edx,edx
div       r13d
mov       [rsi+10],eax
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M02_L15
 
cmp       edi,0FFFFFFFF
je        short M02_L16
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       ecx,0B76
mov       rdx,7FFF54599A40
call      CORINFO_HELP_STRCNS
mov       rbx,rax
call      qword ptr [7FFF547C5C50]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rdi
call      qword ptr [7FFF5419D470]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M02_L16
 
cmp       [rsi],esi
mov       edi,0C
test      ebx,ebx
jge       near ptr M02_L00
M02_L17
 
mov       ecx,0B98
mov       rdx,7FFF54599A40
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,ebx
call      qword ptr [7FFF54BAF240]
int       3
M02_L18
 
mov       rcx,1B3C24002D8
cmp       rbp,[rcx]
jne       short M02_L19
mov       rcx,1B3C2401968
mov       rax,[rcx]
mov       r8,rax
mov       rax,r8
jmp       near ptr M02_L08
M02_L19
 
mov       r8,1B3C24002E0
xor       ecx,ecx
mov       rdx,1B3C2401970
cmp       rbp,[r8]
mov       r8,[rdx]
cmovne    r8,rcx
mov       rcx,r8
test      rcx,rcx
mov       r8,rcx
jne       near ptr M02_L09
M02_L20
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B0]
test      rcx,rcx
je        short M02_L21
jmp       short M02_L22
M02_L21
 
mov       rcx,r12
mov       rdx,7FFF54D3F7D8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L22
 
call      qword ptr [7FFF540EFC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
cmp       rax,rbp
jne       near ptr M02_L12
mov       byte ptr [rsi+15],1
jmp       near ptr M02_L12
M02_L23
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].InitializeFromCollection(System.Collections.Generic.IEnumerable`1>)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,88
lea       rbp,[rsp+0B0]
vxorps    xmm4,xmm4,xmm4
vmovdqu   xmmword ptr [rbp-48],xmm4
xor       eax,eax
mov       [rbp-38],rax
mov       [rbp-70],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,[rcx]
mov       rdx,rsi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+0E8]
test      r11,r11
je        near ptr M03_L12
M03_L00
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
mov       rbx,[rax]
mov       rdi,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M03_L03
M03_L01
 
mov       rcx,[rsi+30]
mov       rcx,[rcx]
mov       r11,[rcx+0F0]
test      r11,r11
je        near ptr M03_L08
M03_L02
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
cmp       qword ptr [rbp-40],0
je        near ptr M03_L09
mov       rcx,[rbp+10]
mov       rdx,[rcx+8]
mov       r8,[rbp-40]
mov       byte ptr [rbp-50],0
xor       r9d,r9d
mov       [rbp-4C],r9d
mov       r9,[rbp-38]
mov       [rsp+20],r9
xor       r9d,r9d
mov       [rsp+28],r9d
mov       [rsp+30],r9d
lea       r9,[rbp-48]
mov       [rsp+38],r9
mov       r9,[rbp-50]
call      qword ptr [7FFF5458E250]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].TryAddInternal(Tables, System.__Canon, System.Nullable`1, System.__Canon, Boolean, Boolean, System.__Canon ByRef)
test      eax,eax
je        near ptr M03_L10
M03_L03
 
mov       rax,[rbp-58]
cmp       rbx,rdi
jne       short M03_L06
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M03_L11
M03_L04
 
mov       ecx,[r14+0C]
mov       r15,[r14]
cmp       ecx,[r15+38]
jae       short M03_L07
mov       rdx,[r15+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M03_L05
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M03_L04
mov       rdx,[rcx]
mov       r15,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,r15
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M03_L01
M03_L05
 
call      CORINFO_HELP_RNGCHKFAIL
M03_L06
 
mov       rcx,rax
mov       r11,7FFF53FA0FC8
call      qword ptr [r11]
test      eax,eax
jne       near ptr M03_L01
mov       rax,[rbp-58]
jmp       near ptr M03_L13
M03_L07
 
mov       rax,[rbp-58]
mov       ecx,[r15+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       near ptr M03_L13
M03_L08
 
mov       rcx,rsi
mov       rdx,7FFF54D60550
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M03_L02
M03_L09
 
mov       ecx,1
mov       rdx,7FFF54599A40
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF547C6190]
int       3
M03_L10
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
call      qword ptr [7FFF547C5C38]
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540EF708]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M03_L11
 
call      qword ptr [7FFF54455E00]
int       3
M03_L12
 
mov       rcx,rdx
mov       rdx,7FFF54D60530
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M03_L00
M03_L13
 
cmp       rbx,rdi
jne       short M03_L15
mov       rcx,[rbp+10]
cmp       dword ptr [rcx+10],0
je        short M03_L16
M03_L14
 
add       rsp,88
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L15
 
mov       rcx,rax
mov       r11,7FFF53FA0FD0
call      qword ptr [r11]
mov       rcx,[rbp+10]
cmp       dword ptr [rcx+10],0
jne       short M03_L14
M03_L16
 
mov       rcx,[rbp+10]
mov       rax,[rcx+8]
mov       [rbp-60],rax
mov       rdx,[rax+10]
mov       eax,[rdx+8]
mov       rdx,[rbp-60]
mov       r11,[rdx+18]
xor       edx,edx
div       dword ptr [r11+8]
mov       [rcx+10],eax
jmp       short M03_L14
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,48
mov       rbp,[rcx+40]
mov       [rsp+40],rbp
lea       rbp,[rbp+0B0]
cmp       qword ptr [rbp-58],0
je        short M03_L17
mov       rax,[rbp-58]
mov       rbx,[rax]
mov       rdi,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rbx,rdi
je        short M03_L17
mov       rcx,rax
mov       r11,7FFF53FA0FD0
call      qword ptr [r11]
M03_L17
 
nop
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M04_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M04_L02
test      rbx,rbx
je        short M04_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M04_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M04_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF54195B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF54195B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L01
 
call      qword ptr [7FFF54455D58]
int       3
M04_L02
 
test      rbx,rbx
je        short M04_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M04_L04
M04_L03
 
mov       rax,1F454220008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToConcurrentDictionary()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
xor       eax,eax
mov       [rsp+30],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rdi,offset MT_System.Collections.Concurrent.ConcurrentDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rcx,rdi
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
mov       rdx,rsi
mov       rcx,rdi
call      qword ptr [7FFF5457E070]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].GetCapacityFromCollection(System.Collections.Generic.IEnumerable`1>)
mov       r8d,eax
xor       ecx,ecx
mov       [rsp+20],rcx
mov       rcx,rbp
mov       edx,0C
xor       r9d,r9d
call      qword ptr [7FFF5457E058]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, Int32, Boolean, System.Collections.Generic.IEqualityComparer`1)
mov       rcx,rbp
mov       rdx,rsi
call      qword ptr [7FFF5457E0B8]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].InitializeFromCollection(System.Collections.Generic.IEnumerable`1>)
mov       [rsp+30],rbp
mov       rbx,[rbx+18]
mov       rdx,[rsp+30]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFF546644C8]
mov       ecx,43
mov       rdx,7FFF545DA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54466D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540D6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545DA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540D6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546642B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542C6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].GetCapacityFromCollection(System.Collections.Generic.IEnumerable`1>)
push      rdi
push      rsi
push      rbx
sub       rsp,30
mov       [rsp+28],rcx
mov       rbx,rcx
mov       rsi,rdx
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0C8]
test      rcx,rcx
je        short M01_L03
M01_L00
 
mov       rdx,rsi
call      qword ptr [7FFF540D4348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       rdi,rax
test      rdi,rdi
je        near ptr M01_L09
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+0D0]
test      r11,r11
je        short M01_L04
M01_L01
 
mov       rcx,rdi
call      qword ptr [r11]
mov       ecx,1F
cmp       eax,1F
cmovg     ecx,eax
mov       eax,ecx
M01_L02
 
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M01_L03
 
mov       rcx,rbx
mov       rdx,7FFF54D50620
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       short M01_L00
M01_L04
 
mov       rcx,rbx
mov       rdx,7FFF54D50640
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L01
M01_L05
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+0E0]
test      r11,r11
je        short M01_L06
jmp       short M01_L07
M01_L06
 
mov       rcx,rbx
mov       rdx,7FFF54D50680
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L07
 
mov       rcx,rsi
call      qword ptr [r11]
mov       ecx,1F
cmp       eax,1F
cmovg     ecx,eax
mov       eax,ecx
jmp       short M01_L02
M01_L08
 
mov       eax,1F
jmp       short M01_L02
M01_L09
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0D8]
test      rcx,rcx
je        short M01_L10
jmp       short M01_L11
M01_L10
 
mov       rcx,rbx
mov       rdx,7FFF54D50660
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L11
 
mov       rdx,rsi
call      qword ptr [7FFF540D4330]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfAny(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L05
jmp       short M01_L08
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, Int32, Boolean, System.Collections.Generic.IEqualityComparer`1)
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
mov       [rsp+30],rcx
mov       rsi,rcx
mov       edi,edx
mov       ebx,r8d
mov       r14d,r9d
mov       rbp,[rsp+0A0]
test      edi,edi
jle       near ptr M02_L15
test      ebx,ebx
jl        near ptr M02_L17
M02_L00
 
cmp       ebx,edi
cmovl     ebx,edi
mov       ecx,ebx
call      qword ptr [7FFF5457E760]; System.Collections.HashHelpers.GetPrime(Int32)
mov       ebx,eax
movsxd    rdx,edi
mov       rcx,offset MT_System.Object[]
call      CORINFO_HELP_NEWARR_1_OBJ
mov       r15,rax
mov       r13d,[r15+8]
test      r13d,r13d
je        near ptr M02_L23
lea       rcx,[r15+10]
mov       rdx,r15
call      CORINFO_HELP_ASSIGN_REF
mov       edi,1
cmp       r13d,1
jle       short M02_L02
mov       r12,offset MT_System.Object
M02_L01
 
mov       rcx,r12
call      CORINFO_HELP_NEWSFAST
mov       ecx,edi
lea       rcx,[r15+rcx*8+10]
mov       rdx,rax
call      CORINFO_HELP_ASSIGN_REF
inc       edi
cmp       r13d,edi
jg        short M02_L01
M02_L02
 
mov       edx,r13d
mov       rcx,offset MT_System.Int32[]
call      CORINFO_HELP_NEWARR_1_VC
mov       rdi,rax
mov       r12,[rsi]
mov       rcx,r12
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       rax,[rdx+0A8]
test      rax,rax
je        short M02_L03
mov       rcx,rax
jmp       short M02_L04
M02_L03
 
mov       rdx,7FFF54D2FBB0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L04
 
movsxd    rdx,ebx
call      CORINFO_HELP_NEWARR_1_VC
mov       rbx,rax
test      rbp,rbp
jne       short M02_L07
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B0]
test      rcx,rcx
je        short M02_L05
jmp       short M02_L06
M02_L05
 
mov       rcx,r12
mov       rdx,7FFF54D2FBC8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L06
 
call      qword ptr [7FFF540DFC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
mov       rbp,rax
M02_L07
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rdx,offset MT_System.String
cmp       [rcx],rdx
jne       near ptr M02_L20
mov       rcx,22746801D60
cmp       rbp,[rcx]
jne       near ptr M02_L18
mov       rcx,22746801960
mov       rax,[rcx]
M02_L08
 
mov       r8,rax
mov       [rsp+28],r8
test      r8,r8
mov       r8,[rsp+28]
je        near ptr M02_L20
M02_L09
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0C0]
test      rcx,rcx
je        short M02_L10
jmp       short M02_L11
M02_L10
 
mov       [rsp+28],r8
mov       rcx,r12
mov       rdx,7FFF54D2FBF0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
mov       r8,[rsp+28]
M02_L11
 
mov       rdx,r8
call      qword ptr [7FFF540D4390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       rbp,rax
M02_L12
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B8]
test      rcx,rcx
je        short M02_L13
jmp       short M02_L14
M02_L13
 
mov       rcx,r12
mov       rdx,7FFF54D2FBD8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L14
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
lea       rcx,[r12+10]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+18]
mov       rdx,r15
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+20]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+8]
mov       rdx,rbp
call      CORINFO_HELP_ASSIGN_REF
mov       rax,0FFFFFFFFFFFFFFFF
mov       ebp,[rbx+8]
mov       ecx,ebp
xor       edx,edx
div       rcx
inc       rax
mov       [r12+28],rax
lea       rcx,[rsi+8]
mov       rdx,r12
call      CORINFO_HELP_ASSIGN_REF
mov       [rsi+14],r14b
mov       eax,ebp
xor       edx,edx
div       r13d
mov       [rsi+10],eax
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M02_L15
 
cmp       edi,0FFFFFFFF
je        short M02_L16
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       ecx,0B76
mov       rdx,7FFF54589A40
call      CORINFO_HELP_STRCNS
mov       rbx,rax
call      qword ptr [7FFF547B5C50]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rdi
call      qword ptr [7FFF5418D470]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M02_L16
 
cmp       [rsi],esi
mov       edi,0C
test      ebx,ebx
jge       near ptr M02_L00
M02_L17
 
mov       ecx,0B98
mov       rdx,7FFF54589A40
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,ebx
call      qword ptr [7FFF54B9EF10]
int       3
M02_L18
 
mov       rcx,227468002D8
cmp       rbp,[rcx]
jne       short M02_L19
mov       rcx,22746801968
mov       rax,[rcx]
mov       r8,rax
mov       rax,r8
jmp       near ptr M02_L08
M02_L19
 
mov       r8,227468002E0
xor       ecx,ecx
mov       rdx,22746801970
cmp       rbp,[r8]
mov       r8,[rdx]
cmovne    r8,rcx
mov       rcx,r8
test      rcx,rcx
mov       r8,rcx
jne       near ptr M02_L09
M02_L20
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B0]
test      rcx,rcx
je        short M02_L21
jmp       short M02_L22
M02_L21
 
mov       rcx,r12
mov       rdx,7FFF54D2FBC8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L22
 
call      qword ptr [7FFF540DFC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
cmp       rax,rbp
jne       near ptr M02_L12
mov       byte ptr [rsi+15],1
jmp       near ptr M02_L12
M02_L23
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].InitializeFromCollection(System.Collections.Generic.IEnumerable`1>)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,88
lea       rbp,[rsp+0B0]
vxorps    xmm4,xmm4,xmm4
vmovdqu   xmmword ptr [rbp-48],xmm4
xor       eax,eax
mov       [rbp-38],rax
mov       [rbp-70],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,[rcx]
mov       rdx,rsi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+0E8]
test      r11,r11
je        near ptr M03_L12
M03_L00
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
mov       rbx,[rax]
mov       rdi,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M03_L03
M03_L01
 
mov       rcx,[rsi+30]
mov       rcx,[rcx]
mov       r11,[rcx+0F0]
test      r11,r11
je        near ptr M03_L08
M03_L02
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
cmp       qword ptr [rbp-40],0
je        near ptr M03_L09
mov       rcx,[rbp+10]
mov       rdx,[rcx+8]
mov       r8,[rbp-40]
mov       byte ptr [rbp-50],0
xor       r9d,r9d
mov       [rbp-4C],r9d
mov       r9,[rbp-38]
mov       [rsp+20],r9
xor       r9d,r9d
mov       [rsp+28],r9d
mov       [rsp+30],r9d
lea       r9,[rbp-48]
mov       [rsp+38],r9
mov       r9,[rbp-50]
call      qword ptr [7FFF5457E250]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].TryAddInternal(Tables, System.__Canon, System.Nullable`1, System.__Canon, Boolean, Boolean, System.__Canon ByRef)
test      eax,eax
je        near ptr M03_L10
M03_L03
 
mov       rax,[rbp-58]
cmp       rbx,rdi
jne       short M03_L06
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M03_L11
M03_L04
 
mov       ecx,[r14+0C]
mov       r15,[r14]
cmp       ecx,[r15+38]
jae       short M03_L07
mov       rdx,[r15+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M03_L05
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M03_L04
mov       rdx,[rcx]
mov       r15,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,r15
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M03_L01
M03_L05
 
call      CORINFO_HELP_RNGCHKFAIL
M03_L06
 
mov       rcx,rax
mov       r11,7FFF53F90FC8
call      qword ptr [r11]
test      eax,eax
jne       near ptr M03_L01
mov       rax,[rbp-58]
jmp       near ptr M03_L13
M03_L07
 
mov       rax,[rbp-58]
mov       ecx,[r15+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       near ptr M03_L13
M03_L08
 
mov       rcx,rsi
mov       rdx,7FFF54D507C0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M03_L02
M03_L09
 
mov       ecx,1
mov       rdx,7FFF54589A40
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF547B6190]
int       3
M03_L10
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
call      qword ptr [7FFF547B5C38]
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540DF708]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M03_L11
 
call      qword ptr [7FFF54445E00]
int       3
M03_L12
 
mov       rcx,rdx
mov       rdx,7FFF54D507A0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M03_L00
M03_L13
 
cmp       rbx,rdi
jne       short M03_L15
mov       rcx,[rbp+10]
cmp       dword ptr [rcx+10],0
je        short M03_L16
M03_L14
 
add       rsp,88
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L15
 
mov       rcx,rax
mov       r11,7FFF53F90FD0
call      qword ptr [r11]
mov       rcx,[rbp+10]
cmp       dword ptr [rcx+10],0
jne       short M03_L14
M03_L16
 
mov       rcx,[rbp+10]
mov       rax,[rcx+8]
mov       [rbp-60],rax
mov       rdx,[rax+10]
mov       eax,[rdx+8]
mov       rdx,[rbp-60]
mov       r11,[rdx+18]
xor       edx,edx
div       dword ptr [r11+8]
mov       [rcx+10],eax
jmp       short M03_L14
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,48
mov       rbp,[rcx+40]
mov       [rsp+40],rbp
lea       rbp,[rbp+0B0]
cmp       qword ptr [rbp-58],0
je        short M03_L17
mov       rax,[rbp-58]
mov       rbx,[rax]
mov       rdi,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rbx,rdi
je        short M03_L17
mov       rcx,rax
mov       r11,7FFF53F90FD0
call      qword ptr [r11]
M03_L17
 
nop
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M04_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M04_L02
test      rbx,rbx
je        short M04_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M04_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M04_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF54185B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF54185B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L01
 
call      qword ptr [7FFF54445D58]
int       3
M04_L02
 
test      rbx,rbx
je        short M04_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M04_L04
M04_L03
 
mov       rax,267D8660008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToConcurrentDictionary()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
xor       eax,eax
mov       [rsp+30],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rdi,offset MT_System.Collections.Concurrent.ConcurrentDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rcx,rdi
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
mov       rdx,rsi
mov       rcx,rdi
call      qword ptr [7FFF5459E070]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].GetCapacityFromCollection(System.Collections.Generic.IEnumerable`1>)
mov       r8d,eax
xor       ecx,ecx
mov       [rsp+20],rcx
mov       rcx,rbp
mov       edx,0C
xor       r9d,r9d
call      qword ptr [7FFF5459E058]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, Int32, Boolean, System.Collections.Generic.IEqualityComparer`1)
mov       rcx,rbp
mov       rdx,rsi
call      qword ptr [7FFF5459E0B8]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].InitializeFromCollection(System.Collections.Generic.IEnumerable`1>)
mov       [rsp+30],rbp
mov       rbx,[rbx+18]
mov       rdx,[rsp+30]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFF546844C8]
mov       ecx,43
mov       rdx,7FFF545FA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54486D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540F6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545FA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540F6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546842B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542E6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].GetCapacityFromCollection(System.Collections.Generic.IEnumerable`1>)
push      rdi
push      rsi
push      rbx
sub       rsp,30
mov       [rsp+28],rcx
mov       rbx,rcx
mov       rsi,rdx
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0C8]
test      rcx,rcx
je        short M01_L03
M01_L00
 
mov       rdx,rsi
call      qword ptr [7FFF540F4348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       rdi,rax
test      rdi,rdi
je        near ptr M01_L09
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+0D0]
test      r11,r11
je        short M01_L04
M01_L01
 
mov       rcx,rdi
call      qword ptr [r11]
mov       ecx,1F
cmp       eax,1F
cmovg     ecx,eax
mov       eax,ecx
M01_L02
 
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M01_L03
 
mov       rcx,rbx
mov       rdx,7FFF54DB31C0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       short M01_L00
M01_L04
 
mov       rcx,rbx
mov       rdx,7FFF54DB31E0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L01
M01_L05
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+0E0]
test      r11,r11
je        short M01_L06
jmp       short M01_L07
M01_L06
 
mov       rcx,rbx
mov       rdx,7FFF54DB3220
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L07
 
mov       rcx,rsi
call      qword ptr [r11]
mov       ecx,1F
cmp       eax,1F
cmovg     ecx,eax
mov       eax,ecx
jmp       short M01_L02
M01_L08
 
mov       eax,1F
jmp       short M01_L02
M01_L09
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0D8]
test      rcx,rcx
je        short M01_L10
jmp       short M01_L11
M01_L10
 
mov       rcx,rbx
mov       rdx,7FFF54DB3200
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L11
 
mov       rdx,rsi
call      qword ptr [7FFF540F4330]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfAny(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L05
jmp       short M01_L08
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, Int32, Boolean, System.Collections.Generic.IEqualityComparer`1)
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
mov       [rsp+30],rcx
mov       rsi,rcx
mov       edi,edx
mov       ebx,r8d
mov       r14d,r9d
mov       rbp,[rsp+0A0]
test      edi,edi
jle       near ptr M02_L15
M02_L00
 
mov       ecx,ebx
mov       rdx,22287719C38
call      qword ptr [7FFF545158D8]; System.ArgumentOutOfRangeException.ThrowIfNegative[[System.Int32, System.Private.CoreLib]](Int32, System.String)
cmp       ebx,edi
cmovl     ebx,edi
mov       ecx,ebx
call      qword ptr [7FFF5459E760]; System.Collections.HashHelpers.GetPrime(Int32)
mov       ebx,eax
movsxd    rdx,edi
mov       rcx,offset MT_System.Object[]
call      CORINFO_HELP_NEWARR_1_OBJ
mov       r15,rax
mov       r13d,[r15+8]
test      r13d,r13d
je        near ptr M02_L22
lea       rcx,[r15+10]
mov       rdx,r15
call      CORINFO_HELP_ASSIGN_REF
mov       edi,1
cmp       r13d,1
jle       short M02_L02
mov       r12,offset MT_System.Object
M02_L01
 
mov       rcx,r12
call      CORINFO_HELP_NEWSFAST
mov       ecx,edi
lea       rcx,[r15+rcx*8+10]
mov       rdx,rax
call      CORINFO_HELP_ASSIGN_REF
inc       edi
cmp       r13d,edi
jg        short M02_L01
M02_L02
 
mov       edx,r13d
mov       rcx,offset MT_System.Int32[]
call      CORINFO_HELP_NEWARR_1_VC
mov       rdi,rax
mov       r12,[rsi]
mov       rcx,r12
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       rax,[rdx+0A8]
test      rax,rax
je        short M02_L03
mov       rcx,rax
jmp       short M02_L04
M02_L03
 
mov       rdx,7FFF54DB1C68
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L04
 
movsxd    rdx,ebx
call      CORINFO_HELP_NEWARR_1_VC
mov       rbx,rax
test      rbp,rbp
jne       short M02_L07
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B0]
test      rcx,rcx
je        short M02_L05
jmp       short M02_L06
M02_L05
 
mov       rcx,r12
mov       rdx,7FFF54DB1C80
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L06
 
call      qword ptr [7FFF540FFC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
mov       rbp,rax
M02_L07
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rdx,offset MT_System.String
cmp       [rcx],rdx
jne       near ptr M02_L19
mov       rcx,1E1F9801D60
cmp       rbp,[rcx]
jne       near ptr M02_L17
mov       rcx,1E1F9801960
mov       rax,[rcx]
M02_L08
 
mov       r8,rax
mov       [rsp+28],r8
test      r8,r8
mov       r8,[rsp+28]
je        near ptr M02_L19
M02_L09
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0C0]
test      rcx,rcx
je        short M02_L10
jmp       short M02_L11
M02_L10
 
mov       [rsp+28],r8
mov       rcx,r12
mov       rdx,7FFF54DB1CA8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
mov       r8,[rsp+28]
M02_L11
 
mov       rdx,r8
call      qword ptr [7FFF540F4390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       rbp,rax
M02_L12
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B8]
test      rcx,rcx
je        short M02_L13
jmp       short M02_L14
M02_L13
 
mov       rcx,r12
mov       rdx,7FFF54DB1C90
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L14
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
lea       rcx,[r12+10]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+18]
mov       rdx,r15
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+20]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+8]
mov       rdx,rbp
call      CORINFO_HELP_ASSIGN_REF
mov       rax,0FFFFFFFFFFFFFFFF
mov       ebp,[rbx+8]
mov       ecx,ebp
xor       edx,edx
div       rcx
inc       rax
mov       [r12+28],rax
lea       rcx,[rsi+8]
mov       rdx,r12
call      CORINFO_HELP_ASSIGN_REF
mov       [rsi+14],r14b
mov       eax,ebp
xor       edx,edx
div       r13d
mov       [rsi+10],eax
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M02_L15
 
cmp       edi,0FFFFFFFF
je        short M02_L16
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       ecx,0B76
mov       rdx,7FFF545A9A40
call      CORINFO_HELP_STRCNS
mov       rbx,rax
call      qword ptr [7FFF547D5C50]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rdi
call      qword ptr [7FFF541AD470]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M02_L16
 
cmp       [rsi],esi
mov       edi,0C
jmp       near ptr M02_L00
M02_L17
 
mov       rcx,1E1F98002D8
cmp       rbp,[rcx]
jne       short M02_L18
mov       rcx,1E1F9801968
mov       rax,[rcx]
mov       r8,rax
mov       rax,r8
jmp       near ptr M02_L08
M02_L18
 
mov       r8,1E1F98002E0
xor       ecx,ecx
mov       rdx,1E1F9801970
cmp       rbp,[r8]
mov       r8,[rdx]
cmovne    r8,rcx
mov       rcx,r8
test      rcx,rcx
mov       r8,rcx
jne       near ptr M02_L09
M02_L19
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B0]
test      rcx,rcx
je        short M02_L20
jmp       short M02_L21
M02_L20
 
mov       rcx,r12
mov       rdx,7FFF54DB1C80
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L21
 
call      qword ptr [7FFF540FFC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
cmp       rax,rbp
jne       near ptr M02_L12
mov       byte ptr [rsi+15],1
jmp       near ptr M02_L12
M02_L22
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].InitializeFromCollection(System.Collections.Generic.IEnumerable`1>)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,88
lea       rbp,[rsp+0B0]
vxorps    xmm4,xmm4,xmm4
vmovdqu   xmmword ptr [rbp-48],xmm4
xor       eax,eax
mov       [rbp-38],rax
mov       [rbp-70],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,[rcx]
mov       rdx,rsi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+0E8]
test      r11,r11
je        near ptr M03_L12
M03_L00
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
mov       rbx,[rax]
mov       rdi,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M03_L03
M03_L01
 
mov       rcx,[rsi+30]
mov       rcx,[rcx]
mov       r11,[rcx+0F0]
test      r11,r11
je        near ptr M03_L08
M03_L02
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
cmp       qword ptr [rbp-40],0
je        near ptr M03_L09
mov       rcx,[rbp+10]
mov       rdx,[rcx+8]
mov       r8,[rbp-40]
mov       byte ptr [rbp-50],0
xor       r9d,r9d
mov       [rbp-4C],r9d
mov       r9,[rbp-38]
mov       [rsp+20],r9
xor       r9d,r9d
mov       [rsp+28],r9d
mov       [rsp+30],r9d
lea       r9,[rbp-48]
mov       [rsp+38],r9
mov       r9,[rbp-50]
call      qword ptr [7FFF5459E250]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].TryAddInternal(Tables, System.__Canon, System.Nullable`1, System.__Canon, Boolean, Boolean, System.__Canon ByRef)
test      eax,eax
je        near ptr M03_L10
M03_L03
 
mov       rax,[rbp-58]
cmp       rbx,rdi
jne       short M03_L06
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M03_L11
M03_L04
 
mov       ecx,[r14+0C]
mov       r15,[r14]
cmp       ecx,[r15+38]
jae       short M03_L07
mov       rdx,[r15+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M03_L05
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M03_L04
mov       rdx,[rcx]
mov       r15,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,r15
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M03_L01
M03_L05
 
call      CORINFO_HELP_RNGCHKFAIL
M03_L06
 
mov       rcx,rax
mov       r11,7FFF53FB1168
call      qword ptr [r11]
test      eax,eax
jne       near ptr M03_L01
mov       rax,[rbp-58]
jmp       near ptr M03_L13
M03_L07
 
mov       rax,[rbp-58]
mov       ecx,[r15+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       near ptr M03_L13
M03_L08
 
mov       rcx,rsi
mov       rdx,7FFF54DB3360
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M03_L02
M03_L09
 
mov       ecx,1
mov       rdx,7FFF545A9A40
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF547D6190]
int       3
M03_L10
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
call      qword ptr [7FFF547D5C38]
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540FF708]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M03_L11
 
call      qword ptr [7FFF54465E00]
int       3
M03_L12
 
mov       rcx,rdx
mov       rdx,7FFF54DB3340
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M03_L00
M03_L13
 
cmp       rbx,rdi
jne       short M03_L15
mov       rcx,[rbp+10]
cmp       dword ptr [rcx+10],0
je        short M03_L16
M03_L14
 
add       rsp,88
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L15
 
mov       rcx,rax
mov       r11,7FFF53FB1170
call      qword ptr [r11]
mov       rcx,[rbp+10]
cmp       dword ptr [rcx+10],0
jne       short M03_L14
M03_L16
 
mov       rcx,[rbp+10]
mov       rax,[rcx+8]
mov       [rbp-60],rax
mov       rdx,[rax+10]
mov       eax,[rdx+8]
mov       rdx,[rbp-60]
mov       r11,[rdx+18]
xor       edx,edx
div       dword ptr [r11+8]
mov       [rcx+10],eax
jmp       short M03_L14
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,48
mov       rbp,[rcx+40]
mov       [rsp+40],rbp
lea       rbp,[rbp+0B0]
cmp       qword ptr [rbp-58],0
je        short M03_L17
mov       rax,[rbp-58]
mov       rbx,[rax]
mov       rdi,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rbx,rdi
je        short M03_L17
mov       rcx,rax
mov       r11,7FFF53FB1170
call      qword ptr [r11]
M03_L17
 
nop
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M04_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M04_L02
test      rbx,rbx
je        short M04_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M04_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M04_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF541A5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF541A5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L01
 
call      qword ptr [7FFF54465D58]
int       3
M04_L02
 
test      rbx,rbx
je        short M04_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M04_L04
M04_L03
 
mov       rax,22287710008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToConcurrentDictionary()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
xor       eax,eax
mov       [rsp+30],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rdi,offset MT_System.Collections.Concurrent.ConcurrentDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rcx,rdi
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
mov       rdx,rsi
mov       rcx,rdi
call      qword ptr [7FFF5458E070]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].GetCapacityFromCollection(System.Collections.Generic.IEnumerable`1>)
mov       r8d,eax
xor       ecx,ecx
mov       [rsp+20],rcx
mov       rcx,rbp
mov       edx,0C
xor       r9d,r9d
call      qword ptr [7FFF5458E058]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, Int32, Boolean, System.Collections.Generic.IEqualityComparer`1)
mov       rcx,rbp
mov       rdx,rsi
call      qword ptr [7FFF5458E0B8]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].InitializeFromCollection(System.Collections.Generic.IEnumerable`1>)
mov       [rsp+30],rbp
mov       rbx,[rbx+18]
mov       rdx,[rsp+30]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFF546744C8]
mov       ecx,43
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54476D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546742B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542D6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].GetCapacityFromCollection(System.Collections.Generic.IEnumerable`1>)
push      rdi
push      rsi
push      rbx
sub       rsp,30
mov       [rsp+28],rcx
mov       rbx,rcx
mov       rsi,rdx
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0C8]
test      rcx,rcx
je        short M01_L00
jmp       short M01_L01
M01_L00
 
mov       rcx,rbx
mov       rdx,7FFF54DCB080
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L01
 
mov       rdx,rsi
call      qword ptr [7FFF540E4348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       rdi,rax
test      rdi,rdi
je        short M01_L05
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+0D0]
test      r11,r11
je        short M01_L02
jmp       short M01_L03
M01_L02
 
mov       rcx,rbx
mov       rdx,7FFF54DCB0A0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L03
 
mov       rcx,rdi
call      qword ptr [r11]
mov       ecx,1F
cmp       eax,1F
cmovg     ecx,eax
mov       eax,ecx
M01_L04
 
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M01_L05
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0D8]
test      rcx,rcx
je        short M01_L06
jmp       short M01_L07
M01_L06
 
mov       rcx,rbx
mov       rdx,7FFF54DCB0C0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L07
 
mov       rdx,rsi
call      qword ptr [7FFF540E4330]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfAny(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
je        short M01_L10
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+0E0]
test      r11,r11
je        short M01_L08
jmp       short M01_L09
M01_L08
 
mov       rcx,rbx
mov       rdx,7FFF54DCB0E0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L09
 
mov       rcx,rsi
call      qword ptr [r11]
mov       ecx,1F
cmp       eax,1F
cmovg     ecx,eax
mov       eax,ecx
jmp       near ptr M01_L04
M01_L10
 
mov       eax,1F
jmp       near ptr M01_L04
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, Int32, Boolean, System.Collections.Generic.IEqualityComparer`1)
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
mov       [rsp+30],rcx
mov       rsi,rcx
mov       edi,edx
mov       ebx,r8d
mov       r14d,r9d
mov       rbp,[rsp+0A0]
test      edi,edi
jle       near ptr M02_L15
test      ebx,ebx
jl        near ptr M02_L17
M02_L00
 
cmp       ebx,edi
cmovl     ebx,edi
mov       ecx,ebx
call      qword ptr [7FFF5458E760]; System.Collections.HashHelpers.GetPrime(Int32)
mov       ebx,eax
movsxd    rdx,edi
mov       rcx,offset MT_System.Object[]
call      CORINFO_HELP_NEWARR_1_OBJ
mov       r15,rax
mov       r13d,[r15+8]
test      r13d,r13d
je        near ptr M02_L23
lea       rcx,[r15+10]
mov       rdx,r15
call      CORINFO_HELP_ASSIGN_REF
mov       edi,1
cmp       r13d,1
jle       short M02_L02
mov       r12,offset MT_System.Object
M02_L01
 
mov       rcx,r12
call      CORINFO_HELP_NEWSFAST
mov       ecx,edi
lea       rcx,[r15+rcx*8+10]
mov       rdx,rax
call      CORINFO_HELP_ASSIGN_REF
inc       edi
cmp       r13d,edi
jg        short M02_L01
M02_L02
 
mov       edx,r13d
mov       rcx,offset MT_System.Int32[]
call      CORINFO_HELP_NEWARR_1_VC
mov       rdi,rax
mov       r12,[rsi]
mov       rcx,r12
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       rax,[rdx+0A8]
test      rax,rax
je        short M02_L03
mov       rcx,rax
jmp       short M02_L04
M02_L03
 
mov       rdx,7FFF54DC6550
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L04
 
movsxd    rdx,ebx
call      CORINFO_HELP_NEWARR_1_VC
mov       rbx,rax
test      rbp,rbp
jne       short M02_L07
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B0]
test      rcx,rcx
je        short M02_L05
jmp       short M02_L06
M02_L05
 
mov       rcx,r12
mov       rdx,7FFF54DC6568
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L06
 
call      qword ptr [7FFF540EFC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
mov       rbp,rax
M02_L07
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rdx,offset MT_System.String
cmp       [rcx],rdx
jne       near ptr M02_L20
mov       rcx,1C0D9401D60
cmp       rbp,[rcx]
jne       near ptr M02_L18
mov       rcx,1C0D9401960
mov       rax,[rcx]
M02_L08
 
mov       r8,rax
mov       [rsp+28],r8
test      r8,r8
mov       r8,[rsp+28]
je        near ptr M02_L20
M02_L09
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0C0]
test      rcx,rcx
je        short M02_L10
jmp       short M02_L11
M02_L10
 
mov       [rsp+28],r8
mov       rcx,r12
mov       rdx,7FFF54DC6590
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
mov       r8,[rsp+28]
M02_L11
 
mov       rdx,r8
call      qword ptr [7FFF540E4390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       rbp,rax
M02_L12
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B8]
test      rcx,rcx
je        short M02_L13
jmp       short M02_L14
M02_L13
 
mov       rcx,r12
mov       rdx,7FFF54DC6578
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L14
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
lea       rcx,[r12+10]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+18]
mov       rdx,r15
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+20]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+8]
mov       rdx,rbp
call      CORINFO_HELP_ASSIGN_REF
mov       rax,0FFFFFFFFFFFFFFFF
mov       ebp,[rbx+8]
mov       ecx,ebp
xor       edx,edx
div       rcx
inc       rax
mov       [r12+28],rax
lea       rcx,[rsi+8]
mov       rdx,r12
call      CORINFO_HELP_ASSIGN_REF
mov       [rsi+14],r14b
mov       eax,ebp
xor       edx,edx
div       r13d
mov       [rsi+10],eax
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M02_L15
 
cmp       edi,0FFFFFFFF
je        short M02_L16
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       ecx,0B76
mov       rdx,7FFF54599A40
call      CORINFO_HELP_STRCNS
mov       rbx,rax
call      qword ptr [7FFF547C5C50]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rdi
call      qword ptr [7FFF5419D470]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M02_L16
 
cmp       [rsi],esi
mov       edi,0C
test      ebx,ebx
jge       near ptr M02_L00
M02_L17
 
mov       ecx,0B98
mov       rdx,7FFF54599A40
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,ebx
call      qword ptr [7FFF549B6A78]
int       3
M02_L18
 
mov       rcx,1C0D94002D8
cmp       rbp,[rcx]
jne       short M02_L19
mov       rcx,1C0D9401968
mov       rax,[rcx]
mov       r8,rax
mov       rax,r8
jmp       near ptr M02_L08
M02_L19
 
mov       r8,1C0D94002E0
xor       ecx,ecx
mov       rdx,1C0D9401970
cmp       rbp,[r8]
mov       r8,[rdx]
cmovne    r8,rcx
mov       rcx,r8
test      rcx,rcx
mov       r8,rcx
jne       near ptr M02_L09
M02_L20
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B0]
test      rcx,rcx
je        short M02_L21
jmp       short M02_L22
M02_L21
 
mov       rcx,r12
mov       rdx,7FFF54DC6568
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L22
 
call      qword ptr [7FFF540EFC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
cmp       rax,rbp
jne       near ptr M02_L12
mov       byte ptr [rsi+15],1
jmp       near ptr M02_L12
M02_L23
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].InitializeFromCollection(System.Collections.Generic.IEnumerable`1>)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,88
lea       rbp,[rsp+0B0]
vxorps    xmm4,xmm4,xmm4
vmovdqu   xmmword ptr [rbp-48],xmm4
xor       eax,eax
mov       [rbp-38],rax
mov       [rbp-70],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,[rcx]
mov       rdx,rsi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+0E8]
test      r11,r11
je        near ptr M03_L12
M03_L00
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
mov       rbx,[rax]
mov       rdi,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M03_L03
M03_L01
 
mov       rcx,[rsi+30]
mov       rcx,[rcx]
mov       r11,[rcx+0F0]
test      r11,r11
je        near ptr M03_L08
M03_L02
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
cmp       qword ptr [rbp-40],0
je        near ptr M03_L09
mov       rcx,[rbp+10]
mov       rdx,[rcx+8]
mov       r8,[rbp-40]
mov       byte ptr [rbp-50],0
xor       r9d,r9d
mov       [rbp-4C],r9d
mov       r9,[rbp-38]
mov       [rsp+20],r9
xor       r9d,r9d
mov       [rsp+28],r9d
mov       [rsp+30],r9d
lea       r9,[rbp-48]
mov       [rsp+38],r9
mov       r9,[rbp-50]
call      qword ptr [7FFF5458E250]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].TryAddInternal(Tables, System.__Canon, System.Nullable`1, System.__Canon, Boolean, Boolean, System.__Canon ByRef)
test      eax,eax
je        near ptr M03_L10
M03_L03
 
mov       rax,[rbp-58]
cmp       rbx,rdi
jne       short M03_L06
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M03_L11
M03_L04
 
mov       ecx,[r14+0C]
mov       r15,[r14]
cmp       ecx,[r15+38]
jae       short M03_L07
mov       rdx,[r15+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M03_L05
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M03_L04
mov       rdx,[rcx]
mov       r15,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,r15
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M03_L01
M03_L05
 
call      CORINFO_HELP_RNGCHKFAIL
M03_L06
 
mov       rcx,rax
mov       r11,7FFF53FA1998
call      qword ptr [r11]
test      eax,eax
jne       near ptr M03_L01
mov       rax,[rbp-58]
jmp       near ptr M03_L13
M03_L07
 
mov       rax,[rbp-58]
mov       ecx,[r15+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       near ptr M03_L13
M03_L08
 
mov       rcx,rsi
mov       rdx,7FFF54DCB210
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M03_L02
M03_L09
 
mov       ecx,1
mov       rdx,7FFF54599A40
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF547C6190]
int       3
M03_L10
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
call      qword ptr [7FFF547C5C38]
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540EF708]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M03_L11
 
call      qword ptr [7FFF54455E00]
int       3
M03_L12
 
mov       rcx,rdx
mov       rdx,7FFF54DCB1F0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M03_L00
M03_L13
 
cmp       rbx,rdi
jne       short M03_L15
mov       rcx,[rbp+10]
cmp       dword ptr [rcx+10],0
je        short M03_L16
M03_L14
 
add       rsp,88
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L15
 
mov       rcx,rax
mov       r11,7FFF53FA19A0
call      qword ptr [r11]
mov       rcx,[rbp+10]
cmp       dword ptr [rcx+10],0
jne       short M03_L14
M03_L16
 
mov       rcx,[rbp+10]
mov       rax,[rcx+8]
mov       [rbp-60],rax
mov       rdx,[rax+10]
mov       eax,[rdx+8]
mov       rdx,[rbp-60]
mov       r11,[rdx+18]
xor       edx,edx
div       dword ptr [r11+8]
mov       [rcx+10],eax
jmp       short M03_L14
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,48
mov       rbp,[rcx+40]
mov       [rsp+40],rbp
lea       rbp,[rbp+0B0]
cmp       qword ptr [rbp-58],0
je        short M03_L17
mov       rax,[rbp-58]
mov       rbx,[rax]
mov       rdi,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rbx,rdi
je        short M03_L17
mov       rcx,rax
mov       r11,7FFF53FA19A0
call      qword ptr [r11]
M03_L17
 
nop
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M04_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M04_L02
test      rbx,rbx
je        short M04_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M04_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M04_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF54195B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF54195B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L01
 
call      qword ptr [7FFF54455D58]
int       3
M04_L02
 
test      rbx,rbx
je        short M04_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M04_L04
M04_L03
 
mov       rax,201674A0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToConcurrentDictionary()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
xor       eax,eax
mov       [rsp+30],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rdi,offset MT_System.Collections.Concurrent.ConcurrentDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rcx,rdi
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
mov       rdx,rsi
mov       rcx,rdi
call      qword ptr [7FFF545AE070]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].GetCapacityFromCollection(System.Collections.Generic.IEnumerable`1>)
mov       r8d,eax
xor       ecx,ecx
mov       [rsp+20],rcx
mov       rcx,rbp
mov       edx,0C
xor       r9d,r9d
call      qword ptr [7FFF545AE058]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, Int32, Boolean, System.Collections.Generic.IEqualityComparer`1)
mov       rcx,rbp
mov       rdx,rsi
call      qword ptr [7FFF545AE0B8]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].InitializeFromCollection(System.Collections.Generic.IEnumerable`1>)
mov       [rsp+30],rbp
mov       rbx,[rbx+18]
mov       rdx,[rsp+30]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFF546944C8]
mov       ecx,43
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54496D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546942B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542F6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].GetCapacityFromCollection(System.Collections.Generic.IEnumerable`1>)
push      rdi
push      rsi
push      rbx
sub       rsp,30
mov       [rsp+28],rcx
mov       rbx,rcx
mov       rsi,rdx
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0C0]
test      rcx,rcx
je        short M01_L00
jmp       short M01_L01
M01_L00
 
mov       rcx,rbx
mov       rdx,7FFF54DDD8A0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L01
 
mov       rdx,rsi
call      qword ptr [7FFF54104348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       rdi,rax
test      rdi,rdi
je        short M01_L05
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+0C8]
test      r11,r11
je        short M01_L02
jmp       short M01_L03
M01_L02
 
mov       rcx,rbx
mov       rdx,7FFF54DDD8C0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L03
 
mov       rcx,rdi
call      qword ptr [r11]
mov       ecx,1F
cmp       eax,1F
cmovg     ecx,eax
mov       eax,ecx
M01_L04
 
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M01_L05
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0D0]
test      rcx,rcx
je        short M01_L06
jmp       short M01_L07
M01_L06
 
mov       rcx,rbx
mov       rdx,7FFF54DDD8E0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L07
 
mov       rdx,rsi
call      qword ptr [7FFF54104330]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfAny(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
je        short M01_L10
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+0D8]
test      r11,r11
je        short M01_L08
jmp       short M01_L09
M01_L08
 
mov       rcx,rbx
mov       rdx,7FFF54DDD900
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L09
 
mov       rcx,rsi
call      qword ptr [r11]
mov       ecx,1F
cmp       eax,1F
cmovg     ecx,eax
mov       eax,ecx
jmp       near ptr M01_L04
M01_L10
 
mov       eax,1F
jmp       near ptr M01_L04
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, Int32, Boolean, System.Collections.Generic.IEqualityComparer`1)
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
mov       [rsp+30],rcx
mov       rsi,rcx
mov       edi,edx
mov       ebx,r8d
mov       r14d,r9d
mov       rbp,[rsp+0A0]
test      edi,edi
jle       near ptr M02_L16
test      ebx,ebx
jl        near ptr M02_L18
M02_L00
 
cmp       ebx,edi
cmovl     ebx,edi
mov       ecx,ebx
call      qword ptr [7FFF545AE760]; System.Collections.HashHelpers.GetPrime(Int32)
mov       ebx,eax
movsxd    rdx,edi
mov       rcx,offset MT_System.Object[]
call      CORINFO_HELP_NEWARR_1_OBJ
mov       r15,rax
mov       r13d,[r15+8]
test      r13d,r13d
je        near ptr M02_L23
lea       rcx,[r15+10]
mov       rdx,r15
call      CORINFO_HELP_ASSIGN_REF
mov       edi,1
cmp       r13d,1
jle       short M02_L02
mov       r12,offset MT_System.Object
M02_L01
 
mov       rcx,r12
call      CORINFO_HELP_NEWSFAST
mov       ecx,edi
lea       rcx,[r15+rcx*8+10]
mov       rdx,rax
call      CORINFO_HELP_ASSIGN_REF
inc       edi
cmp       r13d,edi
jg        short M02_L01
M02_L02
 
mov       edx,r13d
mov       rcx,offset MT_System.Int32[]
call      CORINFO_HELP_NEWARR_1_VC
mov       rdi,rax
mov       r12,[rsi]
mov       rcx,r12
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       rax,[rdx+0A0]
test      rax,rax
je        short M02_L03
mov       rcx,rax
jmp       short M02_L04
M02_L03
 
mov       rdx,7FFF54DDB560
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L04
 
movsxd    rdx,ebx
call      CORINFO_HELP_NEWARR_1_VC
mov       rbx,rax
test      rbp,rbp
jne       short M02_L07
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0A8]
test      rcx,rcx
je        short M02_L05
jmp       short M02_L06
M02_L05
 
mov       rcx,r12
mov       rdx,7FFF54DDB578
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L06
 
call      qword ptr [7FFF5410FC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
mov       rbp,rax
M02_L07
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rdx,offset MT_System.String
cmp       [rcx],rdx
jne       near ptr M02_L20
mov       rcx,28FD0001D60
cmp       rbp,[rcx]
jne       short M02_L08
mov       rcx,28FD0001960
mov       rax,[rcx]
jmp       short M02_L09
M02_L08
 
mov       rax,28FD00002D8
cmp       rbp,[rax]
jne       near ptr M02_L19
mov       rcx,28FD0001968
mov       rax,[rcx]
M02_L09
 
mov       r8,rax
mov       [rsp+28],r8
test      r8,r8
mov       r8,[rsp+28]
je        near ptr M02_L20
M02_L10
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B8]
test      rcx,rcx
je        short M02_L11
jmp       short M02_L12
M02_L11
 
mov       [rsp+28],r8
mov       rcx,r12
mov       rdx,7FFF54DDB5A0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
mov       r8,[rsp+28]
M02_L12
 
mov       rdx,r8
call      qword ptr [7FFF54104390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       rbp,rax
M02_L13
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B0]
test      rcx,rcx
je        short M02_L14
jmp       short M02_L15
M02_L14
 
mov       rcx,r12
mov       rdx,7FFF54DDB588
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L15
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
lea       rcx,[r12+10]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+18]
mov       rdx,r15
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+20]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+8]
mov       rdx,rbp
call      CORINFO_HELP_ASSIGN_REF
mov       rax,0FFFFFFFFFFFFFFFF
mov       ebp,[rbx+8]
mov       ecx,ebp
xor       edx,edx
div       rcx
inc       rax
mov       [r12+28],rax
lea       rcx,[rsi+8]
mov       rdx,r12
call      CORINFO_HELP_ASSIGN_REF
mov       [rsi+14],r14b
mov       eax,ebp
xor       edx,edx
div       r13d
mov       [rsi+10],eax
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M02_L16
 
cmp       edi,0FFFFFFFF
je        short M02_L17
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       ecx,0B76
mov       rdx,7FFF545B9A40
call      CORINFO_HELP_STRCNS
mov       rbx,rax
call      qword ptr [7FFF547E5C50]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rdi
call      qword ptr [7FFF541BD470]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M02_L17
 
cmp       [rsi],esi
mov       edi,0C
test      ebx,ebx
jge       near ptr M02_L00
M02_L18
 
mov       ecx,0B98
mov       rdx,7FFF545B9A40
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,ebx
call      qword ptr [7FFF549D6A78]
int       3
M02_L19
 
mov       rcx,28FD00002E0
xor       eax,eax
mov       rdx,28FD0001970
cmp       rbp,[rcx]
cmove     rax,[rdx]
mov       r8,rax
mov       rcx,r8
test      rcx,rcx
mov       r8,rcx
jne       near ptr M02_L10
M02_L20
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0A8]
test      rcx,rcx
je        short M02_L21
jmp       short M02_L22
M02_L21
 
mov       rcx,r12
mov       rdx,7FFF54DDB578
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L22
 
call      qword ptr [7FFF5410FC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
cmp       rax,rbp
jne       near ptr M02_L13
mov       byte ptr [rsi+15],1
jmp       near ptr M02_L13
M02_L23
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].InitializeFromCollection(System.Collections.Generic.IEnumerable`1>)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,88
lea       rbp,[rsp+0B0]
vxorps    xmm4,xmm4,xmm4
vmovdqu   xmmword ptr [rbp-48],xmm4
xor       eax,eax
mov       [rbp-38],rax
mov       [rbp-70],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,[rcx]
mov       rdx,rsi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+0E0]
test      r11,r11
je        near ptr M03_L12
M03_L00
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
mov       rbx,[rax]
mov       rdi,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M03_L03
M03_L01
 
mov       rcx,[rsi+30]
mov       rcx,[rcx]
mov       r11,[rcx+0E8]
test      r11,r11
je        near ptr M03_L08
M03_L02
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
cmp       qword ptr [rbp-40],0
je        near ptr M03_L09
mov       rcx,[rbp+10]
mov       rdx,[rcx+8]
mov       r8,[rbp-40]
mov       byte ptr [rbp-50],0
xor       r9d,r9d
mov       [rbp-4C],r9d
mov       r9,[rbp-38]
mov       [rsp+20],r9
xor       r9d,r9d
mov       [rsp+28],r9d
mov       [rsp+30],r9d
lea       r9,[rbp-48]
mov       [rsp+38],r9
mov       r9,[rbp-50]
call      qword ptr [7FFF545AE250]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].TryAddInternal(Tables, System.__Canon, System.Nullable`1, System.__Canon, Boolean, Boolean, System.__Canon ByRef)
test      eax,eax
je        near ptr M03_L10
M03_L03
 
mov       rax,[rbp-58]
cmp       rbx,rdi
jne       short M03_L06
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M03_L11
M03_L04
 
mov       ecx,[r14+0C]
mov       r15,[r14]
cmp       ecx,[r15+38]
jae       short M03_L07
mov       rdx,[r15+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M03_L05
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M03_L04
mov       rdx,[rcx]
mov       r15,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,r15
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M03_L01
M03_L05
 
call      CORINFO_HELP_RNGCHKFAIL
M03_L06
 
mov       rcx,rax
mov       r11,7FFF53FC1BB0
call      qword ptr [r11]
test      eax,eax
jne       near ptr M03_L01
mov       rax,[rbp-58]
jmp       near ptr M03_L13
M03_L07
 
mov       rax,[rbp-58]
mov       ecx,[r15+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       near ptr M03_L13
M03_L08
 
mov       rcx,rsi
mov       rdx,7FFF54DDDA30
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M03_L02
M03_L09
 
mov       ecx,1
mov       rdx,7FFF545B9A40
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF547E6190]
int       3
M03_L10
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
call      qword ptr [7FFF547E5C38]
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF5410F708]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M03_L11
 
call      qword ptr [7FFF54475E00]
int       3
M03_L12
 
mov       rcx,rdx
mov       rdx,7FFF54DDDA10
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M03_L00
M03_L13
 
cmp       rbx,rdi
jne       short M03_L15
mov       rcx,[rbp+10]
cmp       dword ptr [rcx+10],0
je        short M03_L16
M03_L14
 
add       rsp,88
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L15
 
mov       rcx,rax
mov       r11,7FFF53FC1BB8
call      qword ptr [r11]
mov       rcx,[rbp+10]
cmp       dword ptr [rcx+10],0
jne       short M03_L14
M03_L16
 
mov       rcx,[rbp+10]
mov       rax,[rcx+8]
mov       [rbp-60],rax
mov       rdx,[rax+10]
mov       eax,[rdx+8]
mov       rdx,[rbp-60]
mov       r11,[rdx+18]
xor       edx,edx
div       dword ptr [r11+8]
mov       [rcx+10],eax
jmp       short M03_L14
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,48
mov       rbp,[rcx+40]
mov       [rsp+40],rbp
lea       rbp,[rbp+0B0]
cmp       qword ptr [rbp-58],0
je        short M03_L17
mov       rax,[rbp-58]
mov       rbx,[rax]
mov       rdi,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rbx,rdi
je        short M03_L17
mov       rcx,rax
mov       r11,7FFF53FC1BB8
call      qword ptr [r11]
M03_L17
 
nop
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M04_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M04_L02
test      rbx,rbx
je        short M04_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M04_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M04_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF541B5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF541B5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L01
 
call      qword ptr [7FFF54475D58]
int       3
M04_L02
 
test      rbx,rbx
je        short M04_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M04_L04
M04_L03
 
mov       rax,2D062180008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToFrozenDictionary()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rdx,[rbx+280]
lea       r9,[rsp+28]
mov       rcx,offset MD_System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.IEnumerable`1>>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2> ByRef)
xor       r8d,r8d
call      qword ptr [7FFF54BA6C70]; System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2 ByRef)
test      rax,rax
jne       short M00_L00
mov       rdx,[rsp+28]
mov       rcx,offset MD_System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.Dictionary`2>)
call      qword ptr [7FFF54BA6CB8]; System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.Dictionary`2)
M00_L00
 
xor       ecx,ecx
mov       [rsp+28],rcx
mov       [rsp+20],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2 ByRef)
push      rbp
push      rsi
push      rbx
sub       rsp,50
lea       rbp,[rsp+60]
xor       eax,eax
mov       [rbp-28],rax
mov       [rbp-20],rax
mov       [rbp-40],rsp
mov       [rbp-18],rcx
mov       [rbp+10],rcx
mov       [rbp+20],r8
mov       [rbp+28],r9
mov       rbx,rdx
test      rbx,rbx
je        near ptr M01_L27
cmp       qword ptr [rbp+20],0
jne       short M01_L01
mov       rdx,[rcx+10]
cmp       qword ptr [rdx+10],48
jle       near ptr M01_L05
mov       rdx,[rdx+48]
test      rdx,rdx
je        near ptr M01_L05
M01_L00
 
mov       rcx,rdx
call      qword ptr [7FFF540EFC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
mov       [rbp+20],rax
M01_L01
 
mov       rcx,[rbp+10]
mov       rdx,[rcx+10]
mov       rax,[rdx+18]
test      rax,rax
je        near ptr M01_L06
M01_L02
 
mov       rcx,rax
mov       rdx,rbx
call      qword ptr [7FFF540E4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L28
M01_L03
 
mov       rcx,[rbp+10]
mov       rdx,[rcx+10]
mov       rax,[rdx+20]
test      rax,rax
je        near ptr M01_L08
M01_L04
 
mov       rcx,rax
mov       rdx,rbx
call      qword ptr [7FFF540E4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rcx,[rbp+28]
mov       rdx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rcx,[rbp+28]
mov       rax,[rcx]
test      rax,rax
je        near ptr M01_L10
mov       rdx,rax
mov       r8d,[rdx+38]
sub       r8d,[rdx+40]
je        near ptr M01_L09
mov       rcx,rax
cmp       [rcx],ecx
call      qword ptr [7FFF540EEC70]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Comparer()
mov       rcx,rax
mov       rax,[rcx]
mov       rdx,offset MT_System.Collections.Generic.GenericEqualityComparer`1[[System.String, System.Private.CoreLib]]
cmp       rax,rdx
jne       short M01_L07
cmp       qword ptr [rbp+20],0
je        short M01_L10
mov       rcx,[rcx]
mov       rdx,[rbp+20]
cmp       rcx,[rdx]
je        short M01_L09
jmp       short M01_L10
M01_L05
 
mov       rdx,7FFF54BC4320
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdx,rax
jmp       near ptr M01_L00
M01_L06
 
mov       rdx,7FFF54BC3350
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
jmp       near ptr M01_L02
M01_L07
 
mov       rdx,[rbp+20]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
jne       short M01_L09
jmp       short M01_L10
M01_L08
 
mov       rdx,7FFF54BC3800
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
jmp       near ptr M01_L04
M01_L09
 
mov       rcx,[rbp+28]
mov       rax,[rcx]
mov       ecx,[rax+38]
sub       ecx,[rax+40]
je        near ptr M01_L19
xor       eax,eax
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L10
 
mov       rax,[rbp+10]
mov       rdx,[rax+10]
mov       rdx,[rdx+20]
test      rdx,rdx
je        near ptr M01_L17
M01_L11
 
mov       rcx,rdx
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       r8,[rbp+20]
xor       edx,edx
call      qword ptr [7FFF540EEBC8]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, System.Collections.Generic.IEqualityComparer`1)
mov       rcx,[rbp+28]
mov       rdx,rsi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       r11,[rcx+28]
test      r11,r11
je        near ptr M01_L18
M01_L12
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-30],rax
jmp       short M01_L16
M01_L13
 
mov       rax,[rbp+10]
mov       rdx,[rax+10]
mov       r11,[rdx+30]
test      r11,r11
je        short M01_L14
jmp       short M01_L15
M01_L14
 
mov       rcx,rax
mov       rdx,7FFF54BC3908
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L15
 
lea       rdx,[rbp-28]
mov       rcx,[rbp-30]
call      qword ptr [r11]
mov       rcx,[rbp+28]
mov       rdx,[rcx]
mov       r8,[rbp-28]
mov       r9,[rbp-20]
cmp       [rdx],dl
mov       rcx,rdx
mov       rdx,r8
mov       r8,r9
mov       r9d,1
call      qword ptr [7FFF540EEE98]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].TryInsert(System.__Canon, System.__Canon, System.Collections.Generic.InsertionBehavior)
mov       rax,[rbp-30]
M01_L16
 
mov       rcx,rax
mov       r11,7FFF53FA1020
call      qword ptr [r11]
test      eax,eax
jne       short M01_L13
mov       rcx,rsp
call      M01_L29
jmp       near ptr M01_L09
M01_L17
 
mov       rcx,rax
mov       rdx,7FFF54BC3800
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdx,rax
jmp       near ptr M01_L11
M01_L18
 
mov       rcx,rax
mov       rdx,7FFF54BC38E8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L12
M01_L19
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L20
jmp       short M01_L21
M01_L20
 
mov       rcx,rax
mov       rdx,7FFF54BC3350
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L21
 
call      qword ptr [7FFF54BA64D8]
mov       rcx,[rax+8]
cmp       rcx,[rbp+20]
je        short M01_L24
mov       rax,[rbp+10]
mov       rcx,[rax+10]
cmp       qword ptr [rcx+10],40
jle       short M01_L22
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L22
jmp       short M01_L23
M01_L22
 
mov       rcx,rax
mov       rdx,7FFF54BC41B0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L23
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
lea       rcx,[rbx+8]
mov       rdx,[rbp+20]
call      CORINFO_HELP_ASSIGN_REF
mov       rax,rbx
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L24
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L25
jmp       short M01_L26
M01_L25
 
mov       rcx,rax
mov       rdx,7FFF54BC3350
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L26
 
call      qword ptr [7FFF54BA64D8]
nop
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L27
 
mov       ecx,6A7
mov       rdx,7FFF54BB35C8
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF54BA6D48]
int       3
M01_L28
 
mov       rcx,[rsi+8]
mov       rdx,[rbp+20]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L03
xor       eax,eax
mov       rcx,[rbp+28]
mov       [rcx],rax
mov       rax,rsi
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L29
 
push      rbp
push      rsi
push      rbx
sub       rsp,30
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+60]
cmp       qword ptr [rbp-30],0
je        short M01_L30
mov       rcx,[rbp-30]
mov       r11,7FFF53FA1028
call      qword ptr [r11]
M01_L30
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rbp
ret
 
System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.Dictionary`2)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,0C8
lea       rbp,[rsp+100]
xor       eax,eax
mov       [rbp-88],rax
mov       [rbp-40],rcx
mov       rbx,rcx
mov       rsi,rdx
mov       rcx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFF540EEC70]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Comparer()
mov       rdi,rax
mov       rcx,[rbx+10]
mov       rdx,offset MT_System.String
cmp       [rcx],rdx
jne       near ptr M02_L42
mov       rcx,[rbx+10]
mov       rcx,[rcx+28]
test      rcx,rcx
je        short M02_L00
jmp       short M02_L01
M02_L00
 
mov       rcx,rbx
mov       rdx,7FFF54BC6410
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L01
 
call      qword ptr [7FFF540EFC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
cmp       rax,rdi
jne       near ptr M02_L48
M02_L02
 
mov       rdx,rdi
mov       rcx,offset MT_System.Collections.Generic.IEqualityComparer`1[[System.String, System.Private.CoreLib]]
call      qword ptr [7FFF540E4390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       r14,rax
mov       rcx,[rbx+10]
mov       rdi,[rcx+30]
test      rdi,rdi
je        short M02_L03
jmp       short M02_L04
M02_L03
 
mov       rcx,rbx
mov       rdx,7FFF54BC6450
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdi,rax
M02_L04
 
mov       rcx,rsi
call      qword ptr [7FFF540EECA0]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Keys()
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FFF5458EAC0]; System.Linq.Enumerable.ToArray[[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1)
mov       rdi,rax
test      rdi,rdi
je        short M02_L05
mov       rcx,offset MT_System.String[]
cmp       [rdi],rcx
je        short M02_L05
mov       rdx,rax
call      qword ptr [7FFF540E4390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       rdi,rax
M02_L05
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],38
jle       short M02_L06
mov       r15,[rcx+38]
test      r15,r15
je        short M02_L06
jmp       short M02_L07
M02_L06
 
mov       rcx,rbx
mov       rdx,7FFF54BC6510
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r15,rax
M02_L07
 
mov       rcx,rsi
call      qword ptr [7FFF540EECE8]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Values()
mov       rdx,rax
mov       rcx,r15
call      qword ptr [7FFF5458EAC0]; System.Linq.Enumerable.ToArray[[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1)
mov       rsi,rax
mov       r15d,7FFFFFFF
xor       r13d,r13d
xor       r12d,r12d
xor       ecx,ecx
mov       eax,[rdi+8]
mov       [rbp-8C],eax
test      eax,eax
jle       short M02_L13
M02_L08
 
mov       edx,ecx
mov       rdx,[rdi+rdx*8+10]
mov       edx,[rdx+8]
cmp       edx,r15d
jl        near ptr M02_L19
M02_L09
 
cmp       edx,r13d
jg        short M02_L14
M02_L10
 
mov       r8d,1
shlx      rdx,r8,rdx
or        r12,rdx
inc       ecx
cmp       eax,ecx
jg        short M02_L12
M02_L11
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],40
jle       near ptr M02_L20
mov       rcx,[rcx+40]
test      rcx,rcx
je        near ptr M02_L20
jmp       near ptr M02_L21
M02_L12
 
mov       eax,[rbp-8C]
jmp       short M02_L08
M02_L13
 
jmp       short M02_L11
M02_L14
 
mov       r13d,edx
jmp       short M02_L10
M02_L15
 
mov       r10d,[rbp-44]
xor       eax,eax
M02_L16
 
movzx     eax,al
mov       [rbp-48],eax
test      r15d,r15d
je        near ptr M02_L54
mov       [rbp-88],rdx
mov       [rbp-80],r8d
mov       [rsp+20],r13d
lea       rcx,[rbp-68]
mov       [rsp+28],rcx
lea       rcx,[rbp-88]
mov       edx,eax
mov       r8d,r10d
mov       r9d,r15d
call      qword ptr [7FFF54BAF378]; System.Collections.Frozen.KeyAnalyzer.TryUseSubstring(System.ReadOnlySpan`1, Boolean, Boolean, Int32, Int32, AnalysisResults ByRef)
test      eax,eax
mov       eax,[rbp-48]
mov       rdx,[rbp-0A8]
mov       r8d,[rbp-6C]
mov       r10d,[rbp-44]
je        near ptr M02_L54
M02_L17
 
movzx     eax,byte ptr [rbp-68]
movzx     r8d,byte ptr [rbp-67]
mov       r13d,[rbp-64]
mov       r15d,[rbp-60]
mov       r10d,[rbp-5C]
mov       [rbp-74],r10d
mov       r9d,[rbp-58]
mov       [rbp-78],r9d
test      r15d,r15d
je        near ptr M02_L32
test      r13d,r13d
jl        short M02_L18
test      eax,eax
jne       near ptr M02_L66
cmp       r15d,1
je        near ptr M02_L73
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],70
jle       near ptr M02_L29
mov       rcx,[rcx+70]
test      rcx,rcx
je        near ptr M02_L29
jmp       near ptr M02_L30
M02_L18
 
test      eax,eax
je        near ptr M02_L59
test      r8d,r8d
jne       near ptr M02_L56
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],0A0
jle       near ptr M02_L23
mov       rcx,[rcx+0A0]
test      rcx,rcx
je        near ptr M02_L23
jmp       near ptr M02_L24
M02_L19
 
mov       r15d,edx
jmp       near ptr M02_L09
M02_L20
 
mov       rcx,rbx
mov       rdx,7FFF54BC7220
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L21
 
mov       [rsp+20],r15d
mov       [rsp+28],r13d
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54BAEAD8]; System.Collections.Frozen.LengthBucketsFrozenDictionary`1[[System.__Canon, System.Private.CoreLib]].CreateLengthBucketsFrozenDictionaryIfAppropriate(System.String[], System.__Canon[], System.Collections.Generic.IEqualityComparer`1, Int32, Int32)
test      rax,rax
jne       near ptr M02_L49
lea       rdx,[rdi+10]
mov       r8d,[rbp-8C]
mov       [rbp-0A8],rdx
mov       [rbp-6C],r8d
mov       rcx,1E7810002E0
xor       r10d,r10d
cmp       r14,[rcx]
sete      r10b
mov       [rbp-44],r10d
test      r10d,r10d
je        near ptr M02_L15
mov       [rbp-88],rdx
mov       [rbp-80],r8d
lea       rcx,[rbp-88]
call      qword ptr [7FFF54BAF3A8]
mov       rdx,[rbp-0A8]
mov       r8d,[rbp-6C]
mov       r10d,[rbp-44]
jmp       near ptr M02_L16
M02_L22
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],50
jle       short M02_L26
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M02_L26
jmp       short M02_L27
M02_L23
 
mov       rcx,rbx
mov       rdx,7FFF54BCDD08
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L24
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-74]
mov       [rsp+20],eax
mov       r10d,[rbp-78]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54BE4600]; System.Collections.Frozen.OrdinalStringFrozenDictionary`1[[System.__Canon, System.Private.CoreLib]]..ctor(System.String[], System.__Canon[], System.Collections.Generic.IEqualityComparer`1, Int32, Int32, Int32, Int32)
mov       rax,r12
M02_L25
 
mov       r12,rax
jmp       short M02_L22
M02_L26
 
mov       rcx,rbx
mov       rdx,7FFF54BC82F0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L27
 
mov       rax,r12
test      rax,rax
je        short M02_L28
cmp       [rax],rcx
je        short M02_L28
mov       rdx,r12
call      qword ptr [7FFF540E43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
M02_L28
 
nop
add       rsp,0C8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L29
 
mov       rcx,rbx
mov       rdx,7FFF54BCA7D0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L30
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-74]
mov       [rsp+20],eax
mov       r10d,[rbp-78]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54BE4600]; System.Collections.Frozen.OrdinalStringFrozenDictionary`1[[System.__Canon, System.Private.CoreLib]]..ctor(System.String[], System.__Canon[], System.Collections.Generic.IEqualityComparer`1, Int32, Int32, Int32, Int32)
M02_L31
 
jmp       near ptr M02_L22
M02_L32
 
test      eax,eax
je        near ptr M02_L39
test      r8d,r8d
jne       short M02_L35
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],60
jle       short M02_L33
mov       rcx,[rcx+60]
test      rcx,rcx
je        short M02_L33
jmp       short M02_L34
M02_L33
 
mov       rcx,rbx
mov       rdx,7FFF54BC9530
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L34
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-74]
mov       [rsp+20],r13d
mov       r13d,[rbp-78]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54BE5E00]
jmp       short M02_L38
M02_L35
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],58
jle       short M02_L36
mov       rcx,[rcx+58]
test      rcx,rcx
je        short M02_L36
jmp       short M02_L37
M02_L36
 
mov       rcx,rbx
mov       rdx,7FFF54BC8C98
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L37
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-74]
mov       [rsp+20],r13d
mov       r13d,[rbp-78]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54BE5338]
M02_L38
 
mov       r12,r15
jmp       near ptr M02_L22
M02_L39
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],48
jle       short M02_L40
mov       rcx,[rcx+48]
test      rcx,rcx
je        short M02_L40
jmp       short M02_L41
M02_L40
 
mov       rcx,rbx
mov       rdx,7FFF54BC82E0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L41
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-74]
mov       [rsp+20],r13d
mov       r13d,[rbp-78]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54BE4738]
mov       r12,r15
jmp       near ptr M02_L22
M02_L42
 
mov       ecx,[rsi+38]
sub       ecx,[rsi+40]
cmp       ecx,4
jg        short M02_L45
mov       rcx,[rbx+10]
mov       rcx,[rcx+20]
test      rcx,rcx
je        short M02_L43
jmp       short M02_L44
M02_L43
 
mov       rcx,rbx
mov       rdx,7FFF54BC62A0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L44
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,rsi
call      qword ptr [7FFF54BAE070]
mov       rax,rbx
add       rsp,0C8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L45
 
mov       rcx,[rbx+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M02_L46
jmp       short M02_L47
M02_L46
 
mov       rcx,rbx
mov       rdx,7FFF54BC5B60
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L47
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,rsi
xor       r8d,r8d
call      qword ptr [7FFF54BAD4A0]
mov       rax,rbx
add       rsp,0C8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L48
 
mov       rcx,1E7810002D8
cmp       rdi,[rcx]
je        near ptr M02_L02
mov       rcx,1E7810002E0
cmp       rdi,[rcx]
jne       near ptr M02_L42
jmp       near ptr M02_L02
M02_L49
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],50
jle       short M02_L51
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M02_L50
jmp       short M02_L53
M02_L50
 
mov       [rbp-98],rax
jmp       short M02_L52
M02_L51
 
mov       [rbp-98],rax
M02_L52
 
mov       rcx,rbx
mov       rdx,7FFF54BC82F0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
mov       rax,[rbp-98]
M02_L53
 
mov       rdx,rax
call      qword ptr [7FFF540E43D8]; System.Runtime.CompilerServices.CastHelpers.ChkCastClass(Void*, System.Object)
nop
add       rsp,0C8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L54
 
mov       rcx,1E789007610
mov       r9,[rcx]
mov       [rbp-0B0],rdx
mov       [rbp-70],r8d
mov       [rbp-4C],eax
mov       [rbp-50],r10d
test      r9,r9
jne       short M02_L55
mov       rcx,offset MT_System.Collections.Frozen.KeyAnalyzer+GetSpan
call      CORINFO_HELP_NEWSFAST
mov       r9,rax
mov       [rbp-0A0],r9
mov       rdx,1E789007608
mov       rdx,[rdx]
mov       rcx,r9
mov       r8,offset System.Collections.Frozen.KeyAnalyzer+<>c.b__0_0(System.String, Int32, Int32)
call      qword ptr [7FFF540E4210]; System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
mov       rcx,1E789007610
mov       rdx,[rbp-0A0]
call      CORINFO_HELP_ASSIGN_REF
mov       r9,[rbp-0A0]
M02_L55
 
mov       rdx,[rbp-0B0]
mov       [rbp-88],rdx
mov       r8d,[rbp-70]
mov       [rbp-80],r8d
mov       [rsp+20],r15d
mov       [rsp+28],r13d
xor       edx,edx
mov       [rsp+30],edx
mov       [rsp+38],edx
mov       [rsp+40],r9
lea       rdx,[rbp-88]
movzx     r8d,byte ptr [rbp-4C]
movzx     r9d,byte ptr [rbp-50]
lea       rcx,[rbp-68]
call      qword ptr [7FFF54BAF390]; System.Collections.Frozen.KeyAnalyzer.CreateAnalysisResults(System.ReadOnlySpan`1, Boolean, Boolean, Int32, Int32, Int32, Int32, GetSpan)
jmp       near ptr M02_L17
M02_L56
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],98
jle       short M02_L57
mov       rcx,[rcx+98]
test      rcx,rcx
je        short M02_L57
jmp       short M02_L58
M02_L57
 
mov       rcx,rbx
mov       rdx,7FFF54BCD480
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L58
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-74]
mov       [rsp+20],eax
mov       r10d,[rbp-78]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54BEE8B0]
mov       rax,r12
jmp       near ptr M02_L25
M02_L59
 
cmp       r15d,1
je        short M02_L62
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],90
jle       short M02_L60
mov       rcx,[rcx+90]
test      rcx,rcx
je        short M02_L60
jmp       short M02_L61
M02_L60
 
mov       rcx,rbx
mov       rdx,7FFF54BCC9F0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L61
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-74]
mov       [rsp+20],eax
mov       r10d,[rbp-78]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54BEDE30]
jmp       short M02_L65
M02_L62
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],88
jle       short M02_L63
mov       rcx,[rcx+88]
test      rcx,rcx
je        short M02_L63
jmp       short M02_L64
M02_L63
 
mov       rcx,rbx
mov       rdx,7FFF54BCC168
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L64
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       r15d,[rbp-74]
mov       [rsp+20],r15d
mov       r15d,[rbp-78]
mov       [rsp+28],r15d
mov       [rsp+30],r13d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54BED3B0]
M02_L65
 
jmp       near ptr M02_L22
M02_L66
 
test      r8d,r8d
jne       short M02_L69
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],80
jle       short M02_L67
mov       rcx,[rcx+80]
test      rcx,rcx
je        short M02_L67
jmp       short M02_L68
M02_L67
 
mov       rcx,rbx
mov       rdx,7FFF54BCB8E0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L68
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-74]
mov       [rsp+20],eax
mov       r10d,[rbp-78]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54BEC930]
jmp       short M02_L72
M02_L69
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],78
jle       short M02_L70
mov       rcx,[rcx+78]
test      rcx,rcx
je        short M02_L70
jmp       short M02_L71
M02_L70
 
mov       rcx,rbx
mov       rdx,7FFF54BCB058
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L71
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-74]
mov       [rsp+20],eax
mov       r10d,[rbp-78]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54BE7DB0]
M02_L72
 
jmp       near ptr M02_L22
M02_L73
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],68
jle       short M02_L74
mov       rcx,[rcx+68]
test      rcx,rcx
je        short M02_L74
jmp       short M02_L75
M02_L74
 
mov       rcx,rbx
mov       rdx,7FFF54BC9F48
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L75
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       r15d,[rbp-74]
mov       [rsp+20],r15d
mov       r15d,[rbp-78]
mov       [rsp+28],r15d
mov       [rsp+30],r13d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54BE68B0]
jmp       near ptr M02_L31
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToFrozenDictionary()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rdx,[rbx+280]
lea       r9,[rsp+28]
mov       rcx,offset MD_System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.IEnumerable`1>>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2> ByRef)
xor       r8d,r8d
call      qword ptr [7FFF54B9C7B0]; System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2 ByRef)
test      rax,rax
jne       short M00_L00
mov       rdx,[rsp+28]
mov       rcx,offset MD_System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.Dictionary`2>)
call      qword ptr [7FFF54B9C7F8]; System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.Dictionary`2)
M00_L00
 
xor       ecx,ecx
mov       [rsp+28],rcx
mov       [rsp+20],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2 ByRef)
push      rbp
push      rsi
push      rbx
sub       rsp,50
lea       rbp,[rsp+60]
xor       eax,eax
mov       [rbp-28],rax
mov       [rbp-20],rax
mov       [rbp-40],rsp
mov       [rbp-18],rcx
mov       [rbp+10],rcx
mov       [rbp+20],r8
mov       [rbp+28],r9
mov       rbx,rdx
test      rbx,rbx
je        near ptr M01_L27
cmp       qword ptr [rbp+20],0
jne       short M01_L01
mov       rdx,[rcx+10]
cmp       qword ptr [rdx+10],48
jle       near ptr M01_L05
mov       rdx,[rdx+48]
test      rdx,rdx
je        near ptr M01_L05
M01_L00
 
mov       rcx,rdx
call      qword ptr [7FFF540DFC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
mov       [rbp+20],rax
mov       rcx,[rbp+10]
M01_L01
 
mov       rdx,[rcx+10]
mov       r8,[rdx+18]
test      r8,r8
je        near ptr M01_L06
M01_L02
 
mov       rcx,r8
mov       rdx,rbx
call      qword ptr [7FFF540D4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L28
M01_L03
 
mov       rcx,[rbp+10]
mov       rdx,[rcx+10]
mov       rax,[rdx+20]
test      rax,rax
je        near ptr M01_L08
M01_L04
 
mov       rcx,rax
mov       rdx,rbx
call      qword ptr [7FFF540D4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rcx,[rbp+28]
mov       rdx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rcx,[rbp+28]
mov       rax,[rcx]
test      rax,rax
je        near ptr M01_L10
mov       rdx,rax
mov       r8d,[rdx+38]
sub       r8d,[rdx+40]
je        near ptr M01_L09
mov       rcx,rax
cmp       [rcx],ecx
call      qword ptr [7FFF540DEC70]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Comparer()
mov       rcx,rax
mov       rax,[rcx]
mov       rdx,offset MT_System.Collections.Generic.GenericEqualityComparer`1[[System.String, System.Private.CoreLib]]
cmp       rax,rdx
jne       short M01_L07
cmp       qword ptr [rbp+20],0
je        near ptr M01_L10
mov       rcx,[rcx]
mov       rdx,[rbp+20]
cmp       rcx,[rdx]
je        short M01_L09
jmp       short M01_L10
M01_L05
 
mov       rdx,7FFF54BB6598
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdx,rax
jmp       near ptr M01_L00
M01_L06
 
mov       rdx,7FFF54BB55C8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
mov       r8,rcx
jmp       near ptr M01_L02
M01_L07
 
mov       rdx,[rbp+20]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
jne       short M01_L09
jmp       short M01_L10
M01_L08
 
mov       rdx,7FFF54BB5A78
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
jmp       near ptr M01_L04
M01_L09
 
mov       rcx,[rbp+28]
mov       rax,[rcx]
mov       ecx,[rax+38]
sub       ecx,[rax+40]
je        near ptr M01_L19
xor       eax,eax
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L10
 
mov       rax,[rbp+10]
mov       rdx,[rax+10]
mov       rdx,[rdx+20]
test      rdx,rdx
je        near ptr M01_L17
M01_L11
 
mov       rcx,rdx
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       r8,[rbp+20]
xor       edx,edx
call      qword ptr [7FFF540DEBC8]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, System.Collections.Generic.IEqualityComparer`1)
mov       rcx,[rbp+28]
mov       rdx,rsi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       r11,[rcx+28]
test      r11,r11
je        near ptr M01_L18
M01_L12
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-30],rax
jmp       short M01_L16
M01_L13
 
mov       rax,[rbp+10]
mov       rdx,[rax+10]
mov       r11,[rdx+30]
test      r11,r11
je        short M01_L14
jmp       short M01_L15
M01_L14
 
mov       rcx,rax
mov       rdx,7FFF54BB5B80
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L15
 
lea       rdx,[rbp-28]
mov       rcx,[rbp-30]
call      qword ptr [r11]
mov       rcx,[rbp+28]
mov       rdx,[rcx]
mov       r8,[rbp-28]
mov       r9,[rbp-20]
cmp       [rdx],dl
mov       rcx,rdx
mov       rdx,r8
mov       r8,r9
mov       r9d,1
call      qword ptr [7FFF540DEE98]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].TryInsert(System.__Canon, System.__Canon, System.Collections.Generic.InsertionBehavior)
mov       rax,[rbp-30]
M01_L16
 
mov       rcx,rax
mov       r11,7FFF53F91020
call      qword ptr [r11]
test      eax,eax
jne       short M01_L13
mov       rcx,rsp
call      M01_L29
jmp       near ptr M01_L09
M01_L17
 
mov       rcx,rax
mov       rdx,7FFF54BB5A78
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdx,rax
jmp       near ptr M01_L11
M01_L18
 
mov       rcx,rax
mov       rdx,7FFF54BB5B60
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L12
M01_L19
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L20
jmp       short M01_L21
M01_L20
 
mov       rcx,rax
mov       rdx,7FFF54BB55C8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L21
 
call      qword ptr [7FFF54B9C018]
mov       rcx,[rax+8]
cmp       rcx,[rbp+20]
je        short M01_L24
mov       rax,[rbp+10]
mov       rcx,[rax+10]
cmp       qword ptr [rcx+10],40
jle       short M01_L22
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L22
jmp       short M01_L23
M01_L22
 
mov       rcx,rax
mov       rdx,7FFF54BB6428
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L23
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
lea       rcx,[rbx+8]
mov       rdx,[rbp+20]
call      CORINFO_HELP_ASSIGN_REF
mov       rax,rbx
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L24
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L25
jmp       short M01_L26
M01_L25
 
mov       rcx,rax
mov       rdx,7FFF54BB55C8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L26
 
call      qword ptr [7FFF54B9C018]
nop
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L27
 
mov       ecx,6A7
mov       rdx,7FFF54BA72A0
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF54B9C888]
int       3
M01_L28
 
mov       rcx,[rsi+8]
mov       rdx,[rbp+20]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L03
xor       eax,eax
mov       rcx,[rbp+28]
mov       [rcx],rax
mov       rax,rsi
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L29
 
push      rbp
push      rsi
push      rbx
sub       rsp,30
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+60]
cmp       qword ptr [rbp-30],0
je        short M01_L30
mov       rcx,[rbp-30]
mov       r11,7FFF53F91028
call      qword ptr [r11]
M01_L30
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rbp
ret
 
System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.Dictionary`2)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,0C8
lea       rbp,[rsp+100]
xor       eax,eax
mov       [rbp-88],rax
mov       [rbp-40],rcx
mov       rbx,rcx
mov       rsi,rdx
mov       rcx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFF540DEC70]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Comparer()
mov       rdi,rax
mov       rcx,[rbx+10]
mov       rdx,offset MT_System.String
cmp       [rcx],rdx
jne       near ptr M02_L31
mov       rcx,[rbx+10]
mov       rcx,[rcx+28]
test      rcx,rcx
je        short M02_L00
jmp       short M02_L01
M02_L00
 
mov       rcx,rbx
mov       rdx,7FFF54BB8688
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L01
 
call      qword ptr [7FFF540DFC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
cmp       rax,rdi
jne       near ptr M02_L37
M02_L02
 
mov       rdx,rdi
mov       rcx,offset MT_System.Collections.Generic.IEqualityComparer`1[[System.String, System.Private.CoreLib]]
call      qword ptr [7FFF540D4390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       r14,rax
mov       rcx,[rbx+10]
mov       rdi,[rcx+30]
test      rdi,rdi
je        short M02_L03
jmp       short M02_L04
M02_L03
 
mov       rcx,rbx
mov       rdx,7FFF54BB86C8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdi,rax
M02_L04
 
mov       rcx,rsi
call      qword ptr [7FFF540DECA0]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Keys()
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FFF5457EAC0]; System.Linq.Enumerable.ToArray[[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1)
mov       rdi,rax
test      rdi,rdi
je        short M02_L05
mov       rcx,offset MT_System.String[]
cmp       [rdi],rcx
je        short M02_L05
mov       rdx,rax
call      qword ptr [7FFF540D4390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       rdi,rax
M02_L05
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],38
jle       short M02_L06
mov       r15,[rcx+38]
test      r15,r15
je        short M02_L06
jmp       short M02_L07
M02_L06
 
mov       rcx,rbx
mov       rdx,7FFF54BB8788
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r15,rax
M02_L07
 
mov       rcx,rsi
call      qword ptr [7FFF540DECE8]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Values()
mov       rdx,rax
mov       rcx,r15
call      qword ptr [7FFF5457EAC0]; System.Linq.Enumerable.ToArray[[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1)
mov       rsi,rax
mov       r15d,7FFFFFFF
xor       r13d,r13d
xor       r12d,r12d
xor       ecx,ecx
mov       eax,[rdi+8]
mov       [rbp-8C],eax
test      eax,eax
jle       short M02_L13
M02_L08
 
mov       edx,ecx
mov       rdx,[rdi+rdx*8+10]
mov       edx,[rdx+8]
cmp       edx,r15d
jl        near ptr M02_L19
M02_L09
 
cmp       edx,r13d
jg        short M02_L14
M02_L10
 
mov       r8d,1
shlx      rdx,r8,rdx
or        r12,rdx
inc       ecx
cmp       eax,ecx
jg        short M02_L12
M02_L11
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],40
jle       near ptr M02_L20
mov       rcx,[rcx+40]
test      rcx,rcx
je        near ptr M02_L20
jmp       near ptr M02_L21
M02_L12
 
mov       eax,[rbp-8C]
jmp       short M02_L08
M02_L13
 
jmp       short M02_L11
M02_L14
 
mov       r13d,edx
jmp       short M02_L10
M02_L15
 
mov       r10d,[rbp-44]
xor       eax,eax
M02_L16
 
movzx     eax,al
mov       [rbp-48],eax
test      r15d,r15d
je        near ptr M02_L43
mov       [rbp-88],rdx
mov       [rbp-80],r8d
mov       [rsp+20],r13d
lea       rcx,[rbp-68]
mov       [rsp+28],rcx
lea       rcx,[rbp-88]
mov       edx,eax
mov       r8d,r10d
mov       r9d,r15d
call      qword ptr [7FFF54BD50B0]; System.Collections.Frozen.KeyAnalyzer.TryUseSubstring(System.ReadOnlySpan`1, Boolean, Boolean, Int32, Int32, AnalysisResults ByRef)
test      eax,eax
mov       eax,[rbp-48]
mov       rdx,[rbp-0A8]
mov       r8d,[rbp-6C]
mov       r10d,[rbp-44]
je        near ptr M02_L43
M02_L17
 
movzx     eax,byte ptr [rbp-68]
movzx     r8d,byte ptr [rbp-67]
mov       r13d,[rbp-64]
mov       r15d,[rbp-60]
mov       r10d,[rbp-5C]
mov       [rbp-74],r10d
mov       r9d,[rbp-58]
mov       [rbp-78],r9d
test      r15d,r15d
je        near ptr M02_L65
test      r13d,r13d
jl        short M02_L18
test      eax,eax
jne       near ptr M02_L55
cmp       r15d,1
je        near ptr M02_L62
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],70
jle       near ptr M02_L22
mov       rcx,[rcx+70]
test      rcx,rcx
je        near ptr M02_L22
jmp       near ptr M02_L23
M02_L18
 
test      eax,eax
je        near ptr M02_L48
test      r8d,r8d
jne       near ptr M02_L45
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],0A0
jle       near ptr M02_L25
mov       rcx,[rcx+0A0]
test      rcx,rcx
je        near ptr M02_L25
jmp       near ptr M02_L26
M02_L19
 
mov       r15d,edx
jmp       near ptr M02_L09
M02_L20
 
mov       rcx,rbx
mov       rdx,7FFF54BB9498
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L21
 
mov       [rsp+20],r15d
mov       [rsp+28],r13d
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54BD4810]; System.Collections.Frozen.LengthBucketsFrozenDictionary`1[[System.__Canon, System.Private.CoreLib]].CreateLengthBucketsFrozenDictionaryIfAppropriate(System.String[], System.__Canon[], System.Collections.Generic.IEqualityComparer`1, Int32, Int32)
test      rax,rax
jne       near ptr M02_L38
lea       rdx,[rdi+10]
mov       r8d,[rbp-8C]
mov       [rbp-0A8],rdx
mov       [rbp-6C],r8d
mov       rcx,1C95FC002E0
xor       r10d,r10d
cmp       r14,[rcx]
sete      r10b
mov       [rbp-44],r10d
test      r10d,r10d
je        near ptr M02_L15
mov       [rbp-88],rdx
mov       [rbp-80],r8d
lea       rcx,[rbp-88]
call      qword ptr [7FFF54BD50E0]
mov       rdx,[rbp-0A8]
mov       r8d,[rbp-6C]
mov       r10d,[rbp-44]
jmp       near ptr M02_L16
M02_L22
 
mov       rcx,rbx
mov       rdx,7FFF54BBCA48
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L23
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-74]
mov       [rsp+20],eax
mov       r10d,[rbp-78]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54BD6328]; System.Collections.Frozen.OrdinalStringFrozenDictionary`1[[System.__Canon, System.Private.CoreLib]]..ctor(System.String[], System.__Canon[], System.Collections.Generic.IEqualityComparer`1, Int32, Int32, Int32, Int32)
M02_L24
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],50
jle       short M02_L28
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M02_L28
jmp       short M02_L29
M02_L25
 
mov       rcx,rbx
mov       rdx,7FFF54BBFF80
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L26
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-74]
mov       [rsp+20],eax
mov       r10d,[rbp-78]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54BD6328]; System.Collections.Frozen.OrdinalStringFrozenDictionary`1[[System.__Canon, System.Private.CoreLib]]..ctor(System.String[], System.__Canon[], System.Collections.Generic.IEqualityComparer`1, Int32, Int32, Int32, Int32)
mov       rax,r12
M02_L27
 
mov       r12,rax
jmp       short M02_L24
M02_L28
 
mov       rcx,rbx
mov       rdx,7FFF54BBA568
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L29
 
mov       rax,r12
test      rax,rax
je        short M02_L30
cmp       [rax],rcx
je        short M02_L30
mov       rdx,r12
call      qword ptr [7FFF540D43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
M02_L30
 
nop
add       rsp,0C8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L31
 
mov       ecx,[rsi+38]
sub       ecx,[rsi+40]
cmp       ecx,4
jg        short M02_L34
mov       rcx,[rbx+10]
mov       rcx,[rcx+20]
test      rcx,rcx
je        short M02_L32
jmp       short M02_L33
M02_L32
 
mov       rcx,rbx
mov       rdx,7FFF54BB8518
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L33
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,rsi
call      qword ptr [7FFF54B9FB88]
mov       rax,rbx
add       rsp,0C8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L34
 
mov       rcx,[rbx+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M02_L35
jmp       short M02_L36
M02_L35
 
mov       rcx,rbx
mov       rdx,7FFF54BB7DD8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L36
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,rsi
xor       r8d,r8d
call      qword ptr [7FFF54B9EFB8]
mov       rax,rbx
add       rsp,0C8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L37
 
mov       rcx,1C95FC002D8
cmp       rdi,[rcx]
je        near ptr M02_L02
mov       rcx,1C95FC002E0
cmp       rdi,[rcx]
jne       near ptr M02_L31
jmp       near ptr M02_L02
M02_L38
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],50
jle       short M02_L40
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M02_L39
jmp       short M02_L42
M02_L39
 
mov       [rbp-98],rax
jmp       short M02_L41
M02_L40
 
mov       [rbp-98],rax
M02_L41
 
mov       rcx,rbx
mov       rdx,7FFF54BBA568
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
mov       rax,[rbp-98]
M02_L42
 
mov       rdx,rax
call      qword ptr [7FFF540D43D8]; System.Runtime.CompilerServices.CastHelpers.ChkCastClass(Void*, System.Object)
nop
add       rsp,0C8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L43
 
mov       rcx,1C95FC14720
mov       r9,[rcx]
mov       [rbp-0B0],rdx
mov       [rbp-70],r8d
mov       [rbp-4C],eax
mov       [rbp-50],r10d
test      r9,r9
jne       short M02_L44
mov       rcx,offset MT_System.Collections.Frozen.KeyAnalyzer+GetSpan
call      CORINFO_HELP_NEWSFAST
mov       r9,rax
mov       [rbp-0A0],r9
mov       rdx,1C95FC14718
mov       rdx,[rdx]
mov       rcx,r9
mov       r8,offset System.Collections.Frozen.KeyAnalyzer+<>c.b__0_0(System.String, Int32, Int32)
call      qword ptr [7FFF540D4210]; System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
mov       rcx,1C95FC14720
mov       rdx,[rbp-0A0]
call      CORINFO_HELP_ASSIGN_REF
mov       r9,[rbp-0A0]
M02_L44
 
mov       rdx,[rbp-0B0]
mov       [rbp-88],rdx
mov       r8d,[rbp-70]
mov       [rbp-80],r8d
mov       [rsp+20],r15d
mov       [rsp+28],r13d
xor       edx,edx
mov       [rsp+30],edx
mov       [rsp+38],edx
mov       [rsp+40],r9
lea       rdx,[rbp-88]
movzx     r8d,byte ptr [rbp-4C]
movzx     r9d,byte ptr [rbp-50]
lea       rcx,[rbp-68]
call      qword ptr [7FFF54BD50C8]; System.Collections.Frozen.KeyAnalyzer.CreateAnalysisResults(System.ReadOnlySpan`1, Boolean, Boolean, Int32, Int32, Int32, Int32, GetSpan)
jmp       near ptr M02_L17
M02_L45
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],98
jle       short M02_L46
mov       rcx,[rcx+98]
test      rcx,rcx
je        short M02_L46
jmp       short M02_L47
M02_L46
 
mov       rcx,rbx
mov       rdx,7FFF54BBF6F8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L47
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-74]
mov       [rsp+20],eax
mov       r10d,[rbp-78]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54BF4930]
mov       rax,r12
jmp       near ptr M02_L27
M02_L48
 
cmp       r15d,1
je        short M02_L51
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],90
jle       short M02_L49
mov       rcx,[rcx+90]
test      rcx,rcx
je        short M02_L49
jmp       short M02_L50
M02_L49
 
mov       rcx,rbx
mov       rdx,7FFF54BBEC68
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L50
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-74]
mov       [rsp+20],eax
mov       r10d,[rbp-78]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54BDFDB0]
jmp       short M02_L54
M02_L51
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],88
jle       short M02_L52
mov       rcx,[rcx+88]
test      rcx,rcx
je        short M02_L52
jmp       short M02_L53
M02_L52
 
mov       rcx,rbx
mov       rdx,7FFF54BBE3E0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L53
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       r15d,[rbp-74]
mov       [rsp+20],r15d
mov       r15d,[rbp-78]
mov       [rsp+28],r15d
mov       [rsp+30],r13d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54BDF330]
M02_L54
 
jmp       near ptr M02_L24
M02_L55
 
test      r8d,r8d
jne       short M02_L58
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],80
jle       short M02_L56
mov       rcx,[rcx+80]
test      rcx,rcx
je        short M02_L56
jmp       short M02_L57
M02_L56
 
mov       rcx,rbx
mov       rdx,7FFF54BBDB58
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L57
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-74]
mov       [rsp+20],eax
mov       r10d,[rbp-78]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54BDE8B0]
jmp       short M02_L61
M02_L58
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],78
jle       short M02_L59
mov       rcx,[rcx+78]
test      rcx,rcx
je        short M02_L59
jmp       short M02_L60
M02_L59
 
mov       rcx,rbx
mov       rdx,7FFF54BBD2D0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L60
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-74]
mov       [rsp+20],eax
mov       r10d,[rbp-78]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54BDDE30]
M02_L61
 
jmp       near ptr M02_L24
M02_L62
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],68
jle       short M02_L63
mov       rcx,[rcx+68]
test      rcx,rcx
je        short M02_L63
jmp       short M02_L64
M02_L63
 
mov       rcx,rbx
mov       rdx,7FFF54BBC1C0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L64
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       r15d,[rbp-74]
mov       [rsp+20],r15d
mov       r15d,[rbp-78]
mov       [rsp+28],r15d
mov       [rsp+30],r13d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54BDC930]
jmp       near ptr M02_L24
M02_L65
 
test      eax,eax
je        near ptr M02_L72
test      r8d,r8d
jne       short M02_L68
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],60
jle       short M02_L66
mov       rcx,[rcx+60]
test      rcx,rcx
je        short M02_L66
jmp       short M02_L67
M02_L66
 
mov       rcx,rbx
mov       rdx,7FFF54BBB7A8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L67
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-74]
mov       [rsp+20],r13d
mov       r13d,[rbp-78]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54BD7B28]
jmp       short M02_L71
M02_L68
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],58
jle       short M02_L69
mov       rcx,[rcx+58]
test      rcx,rcx
je        short M02_L69
jmp       short M02_L70
M02_L69
 
mov       rcx,rbx
mov       rdx,7FFF54BBAF10
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L70
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-74]
mov       [rsp+20],r13d
mov       r13d,[rbp-78]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54BD7060]
M02_L71
 
mov       r12,r15
jmp       near ptr M02_L24
M02_L72
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],48
jle       short M02_L73
mov       rcx,[rcx+48]
test      rcx,rcx
je        short M02_L73
jmp       short M02_L74
M02_L73
 
mov       rcx,rbx
mov       rdx,7FFF54BBA558
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L74
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-74]
mov       [rsp+20],r13d
mov       r13d,[rbp-78]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54BD6460]
mov       r12,r15
jmp       near ptr M02_L24
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToFrozenDictionary()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rdx,[rbx+280]
lea       r9,[rsp+28]
mov       rcx,offset MD_System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.IEnumerable`1>>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2> ByRef)
xor       r8d,r8d
call      qword ptr [7FFF54BCCCF0]; System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2 ByRef)
test      rax,rax
jne       short M00_L00
mov       rdx,[rsp+28]
mov       rcx,offset MD_System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.Dictionary`2>)
call      qword ptr [7FFF54BCCD38]; System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.Dictionary`2)
M00_L00
 
xor       ecx,ecx
mov       [rsp+28],rcx
mov       [rsp+20],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2 ByRef)
push      rbp
push      rsi
push      rbx
sub       rsp,50
lea       rbp,[rsp+60]
xor       eax,eax
mov       [rbp-28],rax
mov       [rbp-20],rax
mov       [rbp-40],rsp
mov       [rbp-18],rcx
mov       [rbp+10],rcx
mov       [rbp+20],r8
mov       [rbp+28],r9
mov       rbx,rdx
test      rbx,rbx
je        near ptr M01_L27
cmp       qword ptr [rbp+20],0
jne       short M01_L01
mov       rdx,[rcx+10]
cmp       qword ptr [rdx+10],48
jle       near ptr M01_L05
mov       rdx,[rdx+48]
test      rdx,rdx
je        near ptr M01_L05
M01_L00
 
mov       rcx,rdx
call      qword ptr [7FFF5410FC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
mov       [rbp+20],rax
mov       rcx,[rbp+10]
M01_L01
 
mov       rdx,[rcx+10]
mov       r8,[rdx+18]
test      r8,r8
je        near ptr M01_L07
M01_L02
 
mov       rcx,r8
mov       rdx,rbx
call      qword ptr [7FFF54104360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L28
M01_L03
 
mov       rcx,[rbp+10]
mov       rdx,[rcx+10]
mov       rax,[rdx+20]
test      rax,rax
je        near ptr M01_L08
M01_L04
 
mov       rcx,rax
mov       rdx,rbx
call      qword ptr [7FFF54104360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rcx,[rbp+28]
mov       rdx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rcx,[rbp+28]
mov       rax,[rcx]
test      rax,rax
je        near ptr M01_L10
mov       rdx,rax
mov       r8d,[rdx+38]
sub       r8d,[rdx+40]
je        short M01_L06
mov       rcx,rax
cmp       [rcx],ecx
call      qword ptr [7FFF5410EC70]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Comparer()
mov       rcx,rax
mov       rax,[rcx]
mov       rdx,offset MT_System.Collections.Generic.GenericEqualityComparer`1[[System.String, System.Private.CoreLib]]
cmp       rax,rdx
jne       short M01_L09
cmp       qword ptr [rbp+20],0
je        near ptr M01_L10
mov       rcx,[rcx]
mov       rdx,[rbp+20]
cmp       rcx,[rdx]
je        short M01_L06
jmp       short M01_L10
M01_L05
 
mov       rdx,7FFF54BE6598
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdx,rax
jmp       near ptr M01_L00
M01_L06
 
mov       rcx,[rbp+28]
mov       rax,[rcx]
mov       ecx,[rax+38]
sub       ecx,[rax+40]
je        near ptr M01_L19
xor       eax,eax
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L07
 
mov       rdx,7FFF54BE55C8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
mov       r8,rcx
jmp       near ptr M01_L02
M01_L08
 
mov       rdx,7FFF54BE5A78
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
jmp       near ptr M01_L04
M01_L09
 
mov       rdx,[rbp+20]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
jne       short M01_L06
M01_L10
 
mov       rax,[rbp+10]
mov       rdx,[rax+10]
mov       rdx,[rdx+20]
test      rdx,rdx
je        near ptr M01_L17
M01_L11
 
mov       rcx,rdx
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       r8,[rbp+20]
xor       edx,edx
call      qword ptr [7FFF5410EBC8]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, System.Collections.Generic.IEqualityComparer`1)
mov       rcx,[rbp+28]
mov       rdx,rsi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       r11,[rcx+28]
test      r11,r11
je        near ptr M01_L18
M01_L12
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-30],rax
jmp       short M01_L16
M01_L13
 
mov       rax,[rbp+10]
mov       rdx,[rax+10]
mov       r11,[rdx+30]
test      r11,r11
je        short M01_L14
jmp       short M01_L15
M01_L14
 
mov       rcx,rax
mov       rdx,7FFF54BE5B80
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L15
 
lea       rdx,[rbp-28]
mov       rcx,[rbp-30]
call      qword ptr [r11]
mov       rcx,[rbp+28]
mov       rdx,[rcx]
mov       r8,[rbp-28]
mov       r9,[rbp-20]
cmp       [rdx],dl
mov       rcx,rdx
mov       rdx,r8
mov       r8,r9
mov       r9d,1
call      qword ptr [7FFF5410EE98]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].TryInsert(System.__Canon, System.__Canon, System.Collections.Generic.InsertionBehavior)
mov       rax,[rbp-30]
M01_L16
 
mov       rcx,rax
mov       r11,7FFF53FC1020
call      qword ptr [r11]
test      eax,eax
jne       short M01_L13
mov       rcx,rsp
call      M01_L29
jmp       near ptr M01_L06
M01_L17
 
mov       rcx,rax
mov       rdx,7FFF54BE5A78
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdx,rax
jmp       near ptr M01_L11
M01_L18
 
mov       rcx,rax
mov       rdx,7FFF54BE5B60
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L12
M01_L19
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L20
jmp       short M01_L21
M01_L20
 
mov       rcx,rax
mov       rdx,7FFF54BE55C8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L21
 
call      qword ptr [7FFF54BCC558]
mov       rcx,[rax+8]
cmp       rcx,[rbp+20]
je        short M01_L24
mov       rax,[rbp+10]
mov       rcx,[rax+10]
cmp       qword ptr [rcx+10],40
jle       short M01_L22
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L22
jmp       short M01_L23
M01_L22
 
mov       rcx,rax
mov       rdx,7FFF54BE6428
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L23
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
lea       rcx,[rbx+8]
mov       rdx,[rbp+20]
call      CORINFO_HELP_ASSIGN_REF
mov       rax,rbx
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L24
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L25
jmp       short M01_L26
M01_L25
 
mov       rcx,rax
mov       rdx,7FFF54BE55C8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L26
 
call      qword ptr [7FFF54BCC558]
nop
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L27
 
mov       ecx,6A7
mov       rdx,7FFF54BD72F8
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF54BCCDC8]
int       3
M01_L28
 
mov       rcx,[rsi+8]
mov       rdx,[rbp+20]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L03
xor       eax,eax
mov       rcx,[rbp+28]
mov       [rcx],rax
mov       rax,rsi
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L29
 
push      rbp
push      rsi
push      rbx
sub       rsp,30
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+60]
cmp       qword ptr [rbp-30],0
je        short M01_L30
mov       rcx,[rbp-30]
mov       r11,7FFF53FC1028
call      qword ptr [r11]
M01_L30
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rbp
ret
 
System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.Dictionary`2)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,0C8
lea       rbp,[rsp+100]
xor       eax,eax
mov       [rbp-88],rax
mov       [rbp-40],rcx
mov       rbx,rcx
mov       rsi,rdx
mov       rcx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFF5410EC70]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Comparer()
mov       rdi,rax
mov       rcx,[rbx+10]
mov       rdx,offset MT_System.String
cmp       [rcx],rdx
jne       near ptr M02_L30
mov       rcx,[rbx+10]
mov       rcx,[rcx+28]
test      rcx,rcx
je        short M02_L00
jmp       short M02_L01
M02_L00
 
mov       rcx,rbx
mov       rdx,7FFF54BE8688
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L01
 
call      qword ptr [7FFF5410FC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
cmp       rax,rdi
jne       near ptr M02_L36
M02_L02
 
mov       rdx,rdi
mov       rcx,offset MT_System.Collections.Generic.IEqualityComparer`1[[System.String, System.Private.CoreLib]]
call      qword ptr [7FFF54104390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       r14,rax
mov       rcx,[rbx+10]
mov       rdi,[rcx+30]
test      rdi,rdi
je        short M02_L03
jmp       short M02_L04
M02_L03
 
mov       rcx,rbx
mov       rdx,7FFF54BE86C8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdi,rax
M02_L04
 
mov       rcx,rsi
call      qword ptr [7FFF5410ECA0]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Keys()
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FFF545AEAC0]; System.Linq.Enumerable.ToArray[[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1)
mov       rdi,rax
test      rdi,rdi
je        short M02_L05
mov       rcx,offset MT_System.String[]
cmp       [rdi],rcx
je        short M02_L05
mov       rdx,rax
call      qword ptr [7FFF54104390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       rdi,rax
M02_L05
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],38
jle       short M02_L06
mov       r15,[rcx+38]
test      r15,r15
je        short M02_L06
jmp       short M02_L07
M02_L06
 
mov       rcx,rbx
mov       rdx,7FFF54BE8788
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r15,rax
M02_L07
 
mov       rcx,rsi
call      qword ptr [7FFF5410ECE8]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Values()
mov       rdx,rax
mov       rcx,r15
call      qword ptr [7FFF545AEAC0]; System.Linq.Enumerable.ToArray[[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1)
mov       rsi,rax
mov       r15d,7FFFFFFF
xor       r13d,r13d
xor       r12d,r12d
xor       ecx,ecx
mov       eax,[rdi+8]
mov       [rbp-8C],eax
test      eax,eax
jle       short M02_L13
M02_L08
 
mov       edx,ecx
mov       rdx,[rdi+rdx*8+10]
mov       edx,[rdx+8]
cmp       edx,r15d
jl        short M02_L15
M02_L09
 
cmp       edx,r13d
jg        short M02_L14
M02_L10
 
mov       r8d,1
shlx      rdx,r8,rdx
or        r12,rdx
inc       ecx
cmp       eax,ecx
jg        short M02_L12
M02_L11
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],40
jle       short M02_L16
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M02_L16
jmp       short M02_L17
M02_L12
 
mov       eax,[rbp-8C]
jmp       short M02_L08
M02_L13
 
jmp       short M02_L11
M02_L14
 
mov       r13d,edx
jmp       short M02_L10
M02_L15
 
mov       r15d,edx
jmp       short M02_L09
M02_L16
 
mov       rcx,rbx
mov       rdx,7FFF54BE9498
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L17
 
mov       [rsp+20],r15d
mov       [rsp+28],r13d
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54C04B88]; System.Collections.Frozen.LengthBucketsFrozenDictionary`1[[System.__Canon, System.Private.CoreLib]].CreateLengthBucketsFrozenDictionaryIfAppropriate(System.String[], System.__Canon[], System.Collections.Generic.IEqualityComparer`1, Int32, Int32)
test      rax,rax
jne       near ptr M02_L37
lea       r10,[rdi+10]
mov       r11d,[rbp-8C]
mov       [rbp-0A8],r10
mov       [rbp-6C],r11d
mov       rcx,18DDBC002E0
xor       r9d,r9d
cmp       r14,[rcx]
sete      r9b
mov       [rbp-44],r9d
test      r9d,r9d
jne       near ptr M02_L42
xor       r8d,r8d
movzx     edx,r8b
test      r15d,r15d
je        near ptr M02_L43
M02_L18
 
mov       [rbp-88],r10
mov       [rbp-80],r11d
mov       [rsp+20],r13d
lea       rcx,[rbp-68]
mov       [rsp+28],rcx
lea       rcx,[rbp-88]
mov       [rbp-48],edx
mov       r8d,r9d
mov       r9d,r15d
call      qword ptr [7FFF54C05428]; System.Collections.Frozen.KeyAnalyzer.TryUseSubstring(System.ReadOnlySpan`1, Boolean, Boolean, Int32, Int32, AnalysisResults ByRef)
test      eax,eax
mov       edx,[rbp-48]
mov       r9d,[rbp-44]
mov       r10,[rbp-0A8]
mov       r11d,[rbp-6C]
je        near ptr M02_L43
M02_L19
 
movzx     eax,byte ptr [rbp-68]
movzx     r8d,byte ptr [rbp-67]
mov       r13d,[rbp-64]
mov       r15d,[rbp-60]
mov       r10d,[rbp-5C]
mov       [rbp-74],r10d
mov       r9d,[rbp-58]
mov       [rbp-78],r9d
test      r15d,r15d
je        near ptr M02_L65
test      r13d,r13d
jl        short M02_L20
test      eax,eax
jne       near ptr M02_L55
cmp       r15d,1
je        near ptr M02_L62
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],70
jle       near ptr M02_L24
mov       rcx,[rcx+70]
test      rcx,rcx
je        near ptr M02_L24
jmp       near ptr M02_L25
M02_L20
 
test      eax,eax
je        near ptr M02_L48
test      r8d,r8d
jne       near ptr M02_L45
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],0A0
jle       short M02_L21
mov       rcx,[rcx+0A0]
test      rcx,rcx
je        short M02_L21
jmp       short M02_L22
M02_L21
 
mov       rcx,rbx
mov       rdx,7FFF54BEFF80
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L22
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-74]
mov       [rsp+20],eax
mov       r10d,[rbp-78]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54C066A0]; System.Collections.Frozen.OrdinalStringFrozenDictionary`1[[System.__Canon, System.Private.CoreLib]]..ctor(System.String[], System.__Canon[], System.Collections.Generic.IEqualityComparer`1, Int32, Int32, Int32, Int32)
mov       rax,r12
M02_L23
 
mov       r12,rax
jmp       short M02_L26
M02_L24
 
mov       rcx,rbx
mov       rdx,7FFF54BECA48
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L25
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-74]
mov       [rsp+20],eax
mov       r10d,[rbp-78]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54C066A0]; System.Collections.Frozen.OrdinalStringFrozenDictionary`1[[System.__Canon, System.Private.CoreLib]]..ctor(System.String[], System.__Canon[], System.Collections.Generic.IEqualityComparer`1, Int32, Int32, Int32, Int32)
M02_L26
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],50
jle       short M02_L27
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M02_L27
jmp       short M02_L28
M02_L27
 
mov       rcx,rbx
mov       rdx,7FFF54BEA568
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L28
 
mov       rax,r12
test      rax,rax
je        short M02_L29
cmp       [rax],rcx
je        short M02_L29
mov       rdx,r12
call      qword ptr [7FFF541043F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
M02_L29
 
nop
add       rsp,0C8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L30
 
mov       ecx,[rsi+38]
sub       ecx,[rsi+40]
cmp       ecx,4
jg        short M02_L33
mov       rcx,[rbx+10]
mov       rcx,[rcx+20]
test      rcx,rcx
je        short M02_L31
jmp       short M02_L32
M02_L31
 
mov       rcx,rbx
mov       rdx,7FFF54BE8518
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L32
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,rsi
call      qword ptr [7FFF54C04120]
mov       rax,rbx
add       rsp,0C8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L33
 
mov       rcx,[rbx+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M02_L34
jmp       short M02_L35
M02_L34
 
mov       rcx,rbx
mov       rdx,7FFF54BE7DD8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L35
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,rsi
xor       r8d,r8d
call      qword ptr [7FFF54BCF4F8]
mov       rax,rbx
add       rsp,0C8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L36
 
mov       rcx,18DDBC002D8
cmp       rdi,[rcx]
je        near ptr M02_L02
mov       rcx,18DDBC002E0
cmp       rdi,[rcx]
jne       near ptr M02_L30
jmp       near ptr M02_L02
M02_L37
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],50
jle       short M02_L39
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M02_L38
jmp       short M02_L41
M02_L38
 
mov       [rbp-98],rax
jmp       short M02_L40
M02_L39
 
mov       [rbp-98],rax
M02_L40
 
mov       rcx,rbx
mov       rdx,7FFF54BEA568
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
mov       rax,[rbp-98]
M02_L41
 
mov       rdx,rax
call      qword ptr [7FFF541043D8]; System.Runtime.CompilerServices.CastHelpers.ChkCastClass(Void*, System.Object)
nop
add       rsp,0C8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L42
 
mov       [rbp-88],r10
mov       [rbp-80],r11d
lea       rcx,[rbp-88]
call      qword ptr [7FFF54C05458]
mov       r8d,eax
movzx     edx,r8b
mov       eax,edx
test      r15d,r15d
mov       edx,eax
mov       r9d,[rbp-44]
mov       r10,[rbp-0A8]
mov       r11d,[rbp-6C]
jne       near ptr M02_L18
M02_L43
 
mov       rcx,18DDBC14720
mov       rax,[rcx]
mov       [rbp-0B0],r10
mov       [rbp-70],r11d
mov       [rbp-4C],edx
mov       [rbp-50],r9d
test      rax,rax
jne       short M02_L44
mov       rcx,offset MT_System.Collections.Frozen.KeyAnalyzer+GetSpan
call      CORINFO_HELP_NEWSFAST
mov       [rbp-0A0],rax
mov       rdx,18DDBC14718
mov       rdx,[rdx]
mov       rcx,rax
mov       r8,offset System.Collections.Frozen.KeyAnalyzer+<>c.b__0_0(System.String, Int32, Int32)
call      qword ptr [7FFF54104210]; System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
mov       rcx,18DDBC14720
mov       rdx,[rbp-0A0]
call      CORINFO_HELP_ASSIGN_REF
mov       rax,[rbp-0A0]
M02_L44
 
mov       r8,[rbp-0B0]
mov       [rbp-88],r8
mov       r10d,[rbp-70]
mov       [rbp-80],r10d
mov       [rsp+20],r15d
mov       [rsp+28],r13d
xor       r8d,r8d
mov       [rsp+30],r8d
mov       [rsp+38],r8d
mov       [rsp+40],rax
lea       rdx,[rbp-88]
movzx     r8d,byte ptr [rbp-4C]
movzx     r9d,byte ptr [rbp-50]
lea       rcx,[rbp-68]
call      qword ptr [7FFF54C05440]; System.Collections.Frozen.KeyAnalyzer.CreateAnalysisResults(System.ReadOnlySpan`1, Boolean, Boolean, Int32, Int32, Int32, Int32, GetSpan)
jmp       near ptr M02_L19
M02_L45
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],98
jle       short M02_L46
mov       rcx,[rcx+98]
test      rcx,rcx
je        short M02_L46
jmp       short M02_L47
M02_L46
 
mov       rcx,rbx
mov       rdx,7FFF54BEF6F8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L47
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-74]
mov       [rsp+20],eax
mov       r10d,[rbp-78]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54C24930]
mov       rax,r12
jmp       near ptr M02_L23
M02_L48
 
cmp       r15d,1
je        short M02_L51
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],90
jle       short M02_L49
mov       rcx,[rcx+90]
test      rcx,rcx
je        short M02_L49
jmp       short M02_L50
M02_L49
 
mov       rcx,rbx
mov       rdx,7FFF54BEEC68
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L50
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-74]
mov       [rsp+20],eax
mov       r10d,[rbp-78]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54C0FE70]
jmp       short M02_L54
M02_L51
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],88
jle       short M02_L52
mov       rcx,[rcx+88]
test      rcx,rcx
je        short M02_L52
jmp       short M02_L53
M02_L52
 
mov       rcx,rbx
mov       rdx,7FFF54BEE3E0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L53
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       r15d,[rbp-74]
mov       [rsp+20],r15d
mov       r15d,[rbp-78]
mov       [rsp+28],r15d
mov       [rsp+30],r13d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54C0F3F0]
M02_L54
 
jmp       near ptr M02_L26
M02_L55
 
test      r8d,r8d
jne       short M02_L58
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],80
jle       short M02_L56
mov       rcx,[rcx+80]
test      rcx,rcx
je        short M02_L56
jmp       short M02_L57
M02_L56
 
mov       rcx,rbx
mov       rdx,7FFF54BEDB58
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L57
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-74]
mov       [rsp+20],eax
mov       r10d,[rbp-78]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54C0E970]
jmp       short M02_L61
M02_L58
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],78
jle       short M02_L59
mov       rcx,[rcx+78]
test      rcx,rcx
je        short M02_L59
jmp       short M02_L60
M02_L59
 
mov       rcx,rbx
mov       rdx,7FFF54BED2D0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L60
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-74]
mov       [rsp+20],eax
mov       r10d,[rbp-78]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54C0DEF0]
M02_L61
 
jmp       near ptr M02_L26
M02_L62
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],68
jle       short M02_L63
mov       rcx,[rcx+68]
test      rcx,rcx
je        short M02_L63
jmp       short M02_L64
M02_L63
 
mov       rcx,rbx
mov       rdx,7FFF54BEC1C0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L64
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       r15d,[rbp-74]
mov       [rsp+20],r15d
mov       r15d,[rbp-78]
mov       [rsp+28],r15d
mov       [rsp+30],r13d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54C0C9F0]
jmp       near ptr M02_L26
M02_L65
 
test      eax,eax
je        near ptr M02_L72
test      r8d,r8d
jne       short M02_L68
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],60
jle       short M02_L66
mov       rcx,[rcx+60]
test      rcx,rcx
je        short M02_L66
jmp       short M02_L67
M02_L66
 
mov       rcx,rbx
mov       rdx,7FFF54BEB7A8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L67
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-74]
mov       [rsp+20],r13d
mov       r13d,[rbp-78]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54C07EA0]
jmp       short M02_L71
M02_L68
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],58
jle       short M02_L69
mov       rcx,[rcx+58]
test      rcx,rcx
je        short M02_L69
jmp       short M02_L70
M02_L69
 
mov       rcx,rbx
mov       rdx,7FFF54BEAF10
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L70
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-74]
mov       [rsp+20],r13d
mov       r13d,[rbp-78]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54C073D8]
M02_L71
 
mov       r12,r15
jmp       near ptr M02_L26
M02_L72
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],48
jle       short M02_L73
mov       rcx,[rcx+48]
test      rcx,rcx
je        short M02_L73
jmp       short M02_L74
M02_L73
 
mov       rcx,rbx
mov       rdx,7FFF54BEA558
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L74
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-74]
mov       [rsp+20],r13d
mov       r13d,[rbp-78]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54C067D8]
mov       r12,r15
jmp       near ptr M02_L26
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToFrozenDictionary()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rdx,[rbx+280]
lea       r9,[rsp+28]
mov       rcx,offset MD_System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.IEnumerable`1>>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2> ByRef)
xor       r8d,r8d
call      qword ptr [7FFF54BAC7B0]; System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2 ByRef)
test      rax,rax
jne       short M00_L00
mov       rdx,[rsp+28]
mov       rcx,offset MD_System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.Dictionary`2>)
call      qword ptr [7FFF54BAC7F8]; System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.Dictionary`2)
M00_L00
 
xor       ecx,ecx
mov       [rsp+28],rcx
mov       [rsp+20],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2 ByRef)
push      rbp
push      rsi
push      rbx
sub       rsp,50
lea       rbp,[rsp+60]
xor       eax,eax
mov       [rbp-28],rax
mov       [rbp-20],rax
mov       [rbp-40],rsp
mov       [rbp-18],rcx
mov       [rbp+10],rcx
mov       [rbp+20],r8
mov       [rbp+28],r9
mov       rbx,rdx
test      rbx,rbx
je        near ptr M01_L28
cmp       qword ptr [rbp+20],0
jne       short M01_L01
mov       rdx,[rcx+10]
cmp       qword ptr [rdx+10],48
jle       near ptr M01_L06
mov       rdx,[rdx+48]
test      rdx,rdx
je        near ptr M01_L06
M01_L00
 
mov       rcx,rdx
call      qword ptr [7FFF540EFC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
mov       [rbp+20],rax
mov       rcx,[rbp+10]
M01_L01
 
mov       rdx,[rcx+10]
mov       r8,[rdx+18]
test      r8,r8
je        near ptr M01_L07
M01_L02
 
mov       rcx,r8
mov       rdx,rbx
call      qword ptr [7FFF540E4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L05
M01_L03
 
mov       rcx,[rbp+10]
mov       rdx,[rcx+10]
mov       rax,[rdx+20]
test      rax,rax
je        near ptr M01_L10
M01_L04
 
mov       rcx,rax
mov       rdx,rbx
call      qword ptr [7FFF540E4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rcx,[rbp+28]
mov       rdx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rcx,[rbp+28]
mov       rax,[rcx]
test      rax,rax
je        near ptr M01_L11
mov       rdx,rax
mov       r8d,[rdx+38]
sub       r8d,[rdx+40]
je        near ptr M01_L09
mov       rcx,rax
cmp       [rcx],ecx
call      qword ptr [7FFF540EEC70]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Comparer()
mov       rcx,rax
mov       rax,[rcx]
mov       rdx,offset MT_System.Collections.Generic.GenericEqualityComparer`1[[System.String, System.Private.CoreLib]]
cmp       rax,rdx
jne       short M01_L08
cmp       qword ptr [rbp+20],0
je        near ptr M01_L11
mov       rcx,[rcx]
mov       rdx,[rbp+20]
cmp       rcx,[rdx]
je        short M01_L09
jmp       near ptr M01_L11
M01_L05
 
mov       rcx,[rsi+8]
mov       rdx,[rbp+20]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L03
xor       eax,eax
mov       rcx,[rbp+28]
mov       [rcx],rax
mov       rax,rsi
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L06
 
mov       rdx,7FFF54BC6598
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdx,rax
jmp       near ptr M01_L00
M01_L07
 
mov       rdx,7FFF54BC55C8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
mov       r8,rcx
jmp       near ptr M01_L02
M01_L08
 
mov       rdx,[rbp+20]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        short M01_L11
M01_L09
 
mov       rcx,[rbp+28]
mov       rax,[rcx]
mov       ecx,[rax+38]
sub       ecx,[rax+40]
je        near ptr M01_L20
xor       eax,eax
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L10
 
mov       rdx,7FFF54BC5A78
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
jmp       near ptr M01_L04
M01_L11
 
mov       rax,[rbp+10]
mov       rdx,[rax+10]
mov       rdx,[rdx+20]
test      rdx,rdx
je        short M01_L12
jmp       short M01_L13
M01_L12
 
mov       rcx,rax
mov       rdx,7FFF54BC5A78
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdx,rax
M01_L13
 
mov       rcx,rdx
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       r8,[rbp+20]
xor       edx,edx
call      qword ptr [7FFF540EEBC8]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, System.Collections.Generic.IEqualityComparer`1)
mov       rcx,[rbp+28]
mov       rdx,rsi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       r11,[rcx+28]
test      r11,r11
je        short M01_L14
jmp       short M01_L15
M01_L14
 
mov       rcx,rax
mov       rdx,7FFF54BC5B60
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L15
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-30],rax
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L17
jmp       short M01_L18
M01_L17
 
mov       rcx,rax
mov       rdx,7FFF54BC5B80
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L18
 
lea       rdx,[rbp-28]
mov       rcx,[rbp-30]
call      qword ptr [r11]
mov       rcx,[rbp+28]
mov       rdx,[rcx]
mov       r8,[rbp-28]
mov       r9,[rbp-20]
cmp       [rdx],dl
mov       rcx,rdx
mov       rdx,r8
mov       r8,r9
mov       r9d,1
call      qword ptr [7FFF540EEE98]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].TryInsert(System.__Canon, System.__Canon, System.Collections.Generic.InsertionBehavior)
M01_L19
 
mov       rcx,[rbp-30]
mov       r11,7FFF53FA1020
call      qword ptr [r11]
test      eax,eax
jne       short M01_L16
mov       rcx,rsp
call      M01_L29
jmp       near ptr M01_L09
M01_L20
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L21
jmp       short M01_L22
M01_L21
 
mov       rcx,rax
mov       rdx,7FFF54BC55C8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L22
 
call      qword ptr [7FFF54BAC018]
mov       rcx,[rax+8]
cmp       rcx,[rbp+20]
je        short M01_L25
mov       rax,[rbp+10]
mov       rcx,[rax+10]
cmp       qword ptr [rcx+10],40
jle       short M01_L23
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rax
mov       rdx,7FFF54BC6428
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L24
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
lea       rcx,[rbx+8]
mov       rdx,[rbp+20]
call      CORINFO_HELP_ASSIGN_REF
mov       rax,rbx
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L25
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L26
jmp       short M01_L27
M01_L26
 
mov       rcx,rax
mov       rdx,7FFF54BC55C8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L27
 
call      qword ptr [7FFF54BAC018]
nop
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L28
 
mov       ecx,6A7
mov       rdx,7FFF54BB72A0
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF54BAC888]
int       3
M01_L29
 
push      rbp
push      rsi
push      rbx
sub       rsp,30
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+60]
cmp       qword ptr [rbp-30],0
je        short M01_L30
mov       rcx,[rbp-30]
mov       r11,7FFF53FA1028
call      qword ptr [r11]
M01_L30
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rbp
ret
 
System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.Dictionary`2)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,0D8
lea       rbp,[rsp+110]
xor       eax,eax
mov       [rbp-0A0],rax
mov       [rbp-40],rcx
mov       rbx,rcx
mov       rsi,rdx
mov       rcx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFF540EEC70]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Comparer()
mov       rdi,rax
mov       rcx,[rbx+10]
mov       rdx,offset MT_System.String
cmp       [rcx],rdx
jne       near ptr M02_L27
mov       rcx,[rbx+10]
mov       rcx,[rcx+28]
test      rcx,rcx
je        short M02_L00
jmp       short M02_L01
M02_L00
 
mov       rcx,rbx
mov       rdx,7FFF54BC8688
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L01
 
call      qword ptr [7FFF540EFC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
cmp       rax,rdi
jne       near ptr M02_L33
M02_L02
 
mov       rdx,rdi
mov       rcx,offset MT_System.Collections.Generic.IEqualityComparer`1[[System.String, System.Private.CoreLib]]
call      qword ptr [7FFF540E4390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       r14,rax
mov       rcx,[rbx+10]
mov       rdi,[rcx+30]
test      rdi,rdi
je        short M02_L03
jmp       short M02_L04
M02_L03
 
mov       rcx,rbx
mov       rdx,7FFF54BC86C8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdi,rax
M02_L04
 
mov       rcx,rsi
call      qword ptr [7FFF540EECA0]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Keys()
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FFF5458EAC0]; System.Linq.Enumerable.ToArray[[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1)
mov       rdi,rax
test      rdi,rdi
je        short M02_L05
mov       rcx,offset MT_System.String[]
cmp       [rdi],rcx
je        short M02_L05
mov       rdx,rax
call      qword ptr [7FFF540E4390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       rdi,rax
M02_L05
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],38
jle       short M02_L06
mov       r15,[rcx+38]
test      r15,r15
je        short M02_L06
jmp       short M02_L07
M02_L06
 
mov       rcx,rbx
mov       rdx,7FFF54BC8788
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r15,rax
M02_L07
 
mov       rcx,rsi
call      qword ptr [7FFF540EECE8]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Values()
mov       rdx,rax
mov       rcx,r15
call      qword ptr [7FFF5458EAC0]; System.Linq.Enumerable.ToArray[[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1)
mov       rsi,rax
mov       r15d,7FFFFFFF
xor       r13d,r13d
xor       r12d,r12d
xor       ecx,ecx
mov       eax,[rdi+8]
mov       [rbp-0A4],eax
test      eax,eax
jle       short M02_L13
M02_L08
 
mov       edx,ecx
mov       rdx,[rdi+rdx*8+10]
mov       edx,[rdx+8]
cmp       edx,r15d
jl        short M02_L15
M02_L09
 
cmp       edx,r13d
jg        short M02_L14
M02_L10
 
mov       r8d,1
shlx      rdx,r8,rdx
or        r12,rdx
inc       ecx
cmp       eax,ecx
jg        short M02_L12
M02_L11
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],40
jle       short M02_L16
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M02_L16
jmp       short M02_L17
M02_L12
 
mov       eax,[rbp-0A4]
jmp       short M02_L08
M02_L13
 
jmp       short M02_L11
M02_L14
 
mov       r13d,edx
jmp       short M02_L10
M02_L15
 
mov       r15d,edx
jmp       short M02_L09
M02_L16
 
mov       rcx,rbx
mov       rdx,7FFF54BC9498
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L17
 
mov       [rsp+20],r15d
mov       [rsp+28],r13d
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54BE4810]; System.Collections.Frozen.LengthBucketsFrozenDictionary`1[[System.__Canon, System.Private.CoreLib]].CreateLengthBucketsFrozenDictionaryIfAppropriate(System.String[], System.__Canon[], System.Collections.Generic.IEqualityComparer`1, Int32, Int32)
test      rax,rax
jne       near ptr M02_L34
lea       r10,[rdi+10]
mov       r11d,[rbp-0A4]
mov       [rbp-0C0],r10
mov       [rbp-84],r11d
mov       rcx,1DD938002E0
xor       r9d,r9d
cmp       r14,[rcx]
sete      r9b
mov       [rbp-5C],r9d
test      r9d,r9d
jne       near ptr M02_L39
xor       r8d,r8d
movzx     edx,r8b
test      r15d,r15d
je        near ptr M02_L40
M02_L18
 
mov       [rbp-0A0],r10
mov       [rbp-98],r11d
mov       [rsp+20],r13d
lea       rcx,[rbp-80]
mov       [rsp+28],rcx
lea       rcx,[rbp-0A0]
mov       [rbp-60],edx
mov       r8d,r9d
mov       r9d,r15d
call      qword ptr [7FFF54BE50B0]; System.Collections.Frozen.KeyAnalyzer.TryUseSubstring(System.ReadOnlySpan`1, Boolean, Boolean, Int32, Int32, AnalysisResults ByRef)
test      eax,eax
mov       edx,[rbp-60]
mov       r9d,[rbp-5C]
mov       r10,[rbp-0C0]
mov       r11d,[rbp-84]
je        near ptr M02_L40
M02_L19
 
movzx     eax,byte ptr [rbp-80]
mov       r13d,[rbp-7C]
mov       r15d,[rbp-78]
mov       r8d,[rbp-74]
mov       [rbp-8C],r8d
mov       r10d,[rbp-70]
mov       [rbp-90],r10d
movzx     ecx,byte ptr [rbp-7F]
mov       [rbp-57],cl
test      r15d,r15d
je        near ptr M02_L66
test      r13d,r13d
jl        near ptr M02_L42
test      eax,eax
jne       near ptr M02_L56
cmp       r15d,1
je        near ptr M02_L63
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],70
jle       short M02_L20
mov       rcx,[rcx+70]
test      rcx,rcx
je        short M02_L20
jmp       short M02_L21
M02_L20
 
mov       rcx,rbx
mov       rdx,7FFF54BCCA48
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L21
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54BE6328]; System.Collections.Frozen.OrdinalStringFrozenDictionary`1[[System.__Canon, System.Private.CoreLib]]..ctor(System.String[], System.__Canon[], System.Collections.Generic.IEqualityComparer`1, Int32, Int32, Int32, Int32)
mov       rax,r12
M02_L22
 
mov       r12,rax
M02_L23
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],50
jle       short M02_L24
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M02_L24
jmp       short M02_L25
M02_L24
 
mov       rcx,rbx
mov       rdx,7FFF54BCA568
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L25
 
mov       rax,r12
test      rax,rax
je        short M02_L26
cmp       [rax],rcx
je        short M02_L26
mov       rdx,r12
call      qword ptr [7FFF540E43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
M02_L26
 
nop
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L27
 
mov       ecx,[rsi+38]
sub       ecx,[rsi+40]
cmp       ecx,4
jg        short M02_L30
mov       rcx,[rbx+10]
mov       rcx,[rcx+20]
test      rcx,rcx
je        short M02_L28
jmp       short M02_L29
M02_L28
 
mov       rcx,rbx
mov       rdx,7FFF54BC8518
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L29
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,rsi
call      qword ptr [7FFF54BAFB88]
mov       rax,rbx
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L30
 
mov       rcx,[rbx+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M02_L31
jmp       short M02_L32
M02_L31
 
mov       rcx,rbx
mov       rdx,7FFF54BC7DD8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L32
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,rsi
xor       r8d,r8d
call      qword ptr [7FFF54BAEFB8]
mov       rax,rbx
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L33
 
mov       rcx,1DD938002D8
cmp       rdi,[rcx]
je        near ptr M02_L02
mov       rcx,1DD938002E0
cmp       rdi,[rcx]
jne       near ptr M02_L27
jmp       near ptr M02_L02
M02_L34
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],50
jle       short M02_L36
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M02_L35
jmp       short M02_L38
M02_L35
 
mov       [rbp-0B0],rax
jmp       short M02_L37
M02_L36
 
mov       [rbp-0B0],rax
M02_L37
 
mov       rcx,rbx
mov       rdx,7FFF54BCA568
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
mov       rax,[rbp-0B0]
M02_L38
 
mov       rdx,rax
call      qword ptr [7FFF540E43D8]; System.Runtime.CompilerServices.CastHelpers.ChkCastClass(Void*, System.Object)
nop
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L39
 
mov       [rbp-0A0],r10
mov       [rbp-98],r11d
lea       rcx,[rbp-0A0]
call      qword ptr [7FFF54BE50E0]
mov       r8d,eax
movzx     edx,r8b
mov       eax,edx
test      r15d,r15d
mov       edx,eax
mov       r9d,[rbp-5C]
mov       r10,[rbp-0C0]
mov       r11d,[rbp-84]
jne       near ptr M02_L18
M02_L40
 
mov       rcx,1DD93814720
mov       rax,[rcx]
mov       [rbp-0C8],r10
mov       [rbp-88],r11d
mov       [rbp-64],edx
mov       [rbp-68],r9d
test      rax,rax
jne       short M02_L41
mov       rcx,offset MT_System.Collections.Frozen.KeyAnalyzer+GetSpan
call      CORINFO_HELP_NEWSFAST
mov       [rbp-0B8],rax
mov       rdx,1DD93814718
mov       rdx,[rdx]
mov       rcx,rax
mov       r8,offset System.Collections.Frozen.KeyAnalyzer+<>c.b__0_0(System.String, Int32, Int32)
call      qword ptr [7FFF540E4210]; System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
mov       rcx,1DD93814720
mov       rdx,[rbp-0B8]
call      CORINFO_HELP_ASSIGN_REF
mov       rax,[rbp-0B8]
M02_L41
 
mov       r8,[rbp-0C8]
mov       [rbp-0A0],r8
mov       r10d,[rbp-88]
mov       [rbp-98],r10d
mov       [rsp+20],r15d
mov       [rsp+28],r13d
xor       r8d,r8d
mov       [rsp+30],r8d
mov       [rsp+38],r8d
mov       [rsp+40],rax
lea       rdx,[rbp-0A0]
movzx     r8d,byte ptr [rbp-64]
movzx     r9d,byte ptr [rbp-68]
lea       rcx,[rbp-80]
call      qword ptr [7FFF54BE50C8]; System.Collections.Frozen.KeyAnalyzer.CreateAnalysisResults(System.ReadOnlySpan`1, Boolean, Boolean, Int32, Int32, Int32, Int32, GetSpan)
jmp       near ptr M02_L19
M02_L42
 
test      eax,eax
je        near ptr M02_L49
cmp       byte ptr [rbp-57],0
jne       short M02_L45
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],0A0
jle       short M02_L43
mov       rcx,[rcx+0A0]
test      rcx,rcx
je        short M02_L43
jmp       short M02_L44
M02_L43
 
mov       rcx,rbx
mov       rdx,7FFF54BCFF80
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L44
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54C053B0]
jmp       short M02_L48
M02_L45
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],98
jle       short M02_L46
mov       rcx,[rcx+98]
test      rcx,rcx
je        short M02_L46
jmp       short M02_L47
M02_L46
 
mov       rcx,rbx
mov       rdx,7FFF54BCF6F8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L47
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54C04930]
M02_L48
 
jmp       near ptr M02_L23
M02_L49
 
cmp       r15d,1
je        short M02_L52
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],90
jle       short M02_L50
mov       rcx,[rcx+90]
test      rcx,rcx
je        short M02_L50
jmp       short M02_L51
M02_L50
 
mov       rcx,rbx
mov       rdx,7FFF54BCEC68
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L51
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54BEFDB0]
jmp       short M02_L55
M02_L52
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],88
jle       short M02_L53
mov       rcx,[rcx+88]
test      rcx,rcx
je        short M02_L53
jmp       short M02_L54
M02_L53
 
mov       rcx,rbx
mov       rdx,7FFF54BCE3E0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L54
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       r15d,[rbp-8C]
mov       [rsp+20],r15d
mov       r15d,[rbp-90]
mov       [rsp+28],r15d
mov       [rsp+30],r13d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54BEF330]
M02_L55
 
jmp       near ptr M02_L23
M02_L56
 
cmp       byte ptr [rbp-57],0
jne       short M02_L59
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],80
jle       short M02_L57
mov       rcx,[rcx+80]
test      rcx,rcx
je        short M02_L57
jmp       short M02_L58
M02_L57
 
mov       rcx,rbx
mov       rdx,7FFF54BCDB58
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L58
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54BEE8B0]
jmp       short M02_L62
M02_L59
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],78
jle       short M02_L60
mov       rcx,[rcx+78]
test      rcx,rcx
je        short M02_L60
jmp       short M02_L61
M02_L60
 
mov       rcx,rbx
mov       rdx,7FFF54BCD2D0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L61
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54BEDE30]
M02_L62
 
jmp       near ptr M02_L23
M02_L63
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],68
jle       short M02_L64
mov       rcx,[rcx+68]
test      rcx,rcx
je        short M02_L64
jmp       short M02_L65
M02_L64
 
mov       rcx,rbx
mov       rdx,7FFF54BCC1C0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L65
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       r15d,[rbp-8C]
mov       [rsp+20],r15d
mov       r15d,[rbp-90]
mov       [rsp+28],r15d
mov       [rsp+30],r13d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54BEC930]
mov       rax,r12
jmp       near ptr M02_L22
M02_L66
 
test      eax,eax
je        near ptr M02_L73
cmp       byte ptr [rbp-57],0
jne       short M02_L69
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],60
jle       short M02_L67
mov       rcx,[rcx+60]
test      rcx,rcx
je        short M02_L67
jmp       short M02_L68
M02_L67
 
mov       rcx,rbx
mov       rdx,7FFF54BCB7A8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L68
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-8C]
mov       [rsp+20],r13d
mov       r13d,[rbp-90]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54BE7B28]
jmp       short M02_L72
M02_L69
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],58
jle       short M02_L70
mov       rcx,[rcx+58]
test      rcx,rcx
je        short M02_L70
jmp       short M02_L71
M02_L70
 
mov       rcx,rbx
mov       rdx,7FFF54BCAF10
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L71
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-8C]
mov       [rsp+20],r13d
mov       r13d,[rbp-90]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54BE7060]
M02_L72
 
mov       r12,r15
jmp       near ptr M02_L23
M02_L73
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],48
jle       short M02_L74
mov       rcx,[rcx+48]
test      rcx,rcx
je        short M02_L74
jmp       short M02_L75
M02_L74
 
mov       rcx,rbx
mov       rdx,7FFF54BCA558
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L75
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-8C]
mov       [rsp+20],r13d
mov       r13d,[rbp-90]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54BE6460]
mov       r12,r15
jmp       near ptr M02_L23
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToFrozenDictionary()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rdx,[rbx+280]
lea       r9,[rsp+28]
mov       rcx,offset MD_System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.IEnumerable`1>>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2> ByRef)
xor       r8d,r8d
call      qword ptr [7FFF54BBC7B0]; System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2 ByRef)
test      rax,rax
jne       short M00_L00
mov       rdx,[rsp+28]
mov       rcx,offset MD_System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.Dictionary`2>)
call      qword ptr [7FFF54BBC7F8]; System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.Dictionary`2)
M00_L00
 
xor       ecx,ecx
mov       [rsp+28],rcx
mov       [rsp+20],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2 ByRef)
push      rbp
push      rsi
push      rbx
sub       rsp,50
lea       rbp,[rsp+60]
xor       eax,eax
mov       [rbp-28],rax
mov       [rbp-20],rax
mov       [rbp-40],rsp
mov       [rbp-18],rcx
mov       [rbp+10],rcx
mov       [rbp+20],r8
mov       [rbp+28],r9
mov       rbx,rdx
test      rbx,rbx
je        near ptr M01_L28
cmp       qword ptr [rbp+20],0
jne       short M01_L01
mov       rdx,[rcx+10]
cmp       qword ptr [rdx+10],48
jle       near ptr M01_L06
mov       rdx,[rdx+48]
test      rdx,rdx
je        near ptr M01_L06
M01_L00
 
mov       rcx,rdx
call      qword ptr [7FFF540FFC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
mov       [rbp+20],rax
mov       rcx,[rbp+10]
M01_L01
 
mov       rdx,[rcx+10]
mov       r8,[rdx+18]
test      r8,r8
je        near ptr M01_L07
M01_L02
 
mov       rcx,r8
mov       rdx,rbx
call      qword ptr [7FFF540F4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L05
M01_L03
 
mov       rcx,[rbp+10]
mov       rdx,[rcx+10]
mov       rax,[rdx+20]
test      rax,rax
je        near ptr M01_L10
M01_L04
 
mov       rcx,rax
mov       rdx,rbx
call      qword ptr [7FFF540F4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rcx,[rbp+28]
mov       rdx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rcx,[rbp+28]
mov       rax,[rcx]
test      rax,rax
je        near ptr M01_L11
mov       rdx,rax
mov       r8d,[rdx+38]
sub       r8d,[rdx+40]
je        near ptr M01_L09
mov       rcx,rax
cmp       [rcx],ecx
call      qword ptr [7FFF540FEC70]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Comparer()
mov       rcx,rax
mov       rax,[rcx]
mov       rdx,offset MT_System.Collections.Generic.GenericEqualityComparer`1[[System.String, System.Private.CoreLib]]
cmp       rax,rdx
jne       short M01_L08
cmp       qword ptr [rbp+20],0
je        near ptr M01_L11
mov       rcx,[rcx]
mov       rdx,[rbp+20]
cmp       rcx,[rdx]
je        short M01_L09
jmp       near ptr M01_L11
M01_L05
 
mov       rcx,[rsi+8]
mov       rdx,[rbp+20]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L03
xor       eax,eax
mov       rcx,[rbp+28]
mov       [rcx],rax
mov       rax,rsi
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L06
 
mov       rdx,7FFF54BE0980
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdx,rax
jmp       near ptr M01_L00
M01_L07
 
mov       rdx,7FFF54BDF9A8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
mov       r8,rcx
jmp       near ptr M01_L02
M01_L08
 
mov       rdx,[rbp+20]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        short M01_L11
M01_L09
 
mov       rcx,[rbp+28]
mov       rax,[rcx]
mov       ecx,[rax+38]
sub       ecx,[rax+40]
je        near ptr M01_L20
xor       eax,eax
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L10
 
mov       rdx,7FFF54BDFE58
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
jmp       near ptr M01_L04
M01_L11
 
mov       rax,[rbp+10]
mov       rdx,[rax+10]
mov       rdx,[rdx+20]
test      rdx,rdx
je        short M01_L12
jmp       short M01_L13
M01_L12
 
mov       rcx,rax
mov       rdx,7FFF54BDFE58
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdx,rax
M01_L13
 
mov       rcx,rdx
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       r8,[rbp+20]
xor       edx,edx
call      qword ptr [7FFF540FEBC8]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, System.Collections.Generic.IEqualityComparer`1)
mov       rcx,[rbp+28]
mov       rdx,rsi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       r11,[rcx+28]
test      r11,r11
je        short M01_L14
jmp       short M01_L15
M01_L14
 
mov       rcx,rax
mov       rdx,7FFF54BDFF40
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L15
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-30],rax
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L17
jmp       short M01_L18
M01_L17
 
mov       rcx,rax
mov       rdx,7FFF54BDFF60
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L18
 
lea       rdx,[rbp-28]
mov       rcx,[rbp-30]
call      qword ptr [r11]
mov       rcx,[rbp+28]
mov       rdx,[rcx]
mov       r8,[rbp-28]
mov       r9,[rbp-20]
cmp       [rdx],dl
mov       rcx,rdx
mov       rdx,r8
mov       r8,r9
mov       r9d,1
call      qword ptr [7FFF540FEE98]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].TryInsert(System.__Canon, System.__Canon, System.Collections.Generic.InsertionBehavior)
M01_L19
 
mov       rcx,[rbp-30]
mov       r11,7FFF53FB1020
call      qword ptr [r11]
test      eax,eax
jne       short M01_L16
mov       rcx,rsp
call      M01_L29
jmp       near ptr M01_L09
M01_L20
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L21
jmp       short M01_L22
M01_L21
 
mov       rcx,rax
mov       rdx,7FFF54BDF9A8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L22
 
call      qword ptr [7FFF54BBC018]
mov       rcx,[rax+8]
cmp       rcx,[rbp+20]
je        short M01_L25
mov       rax,[rbp+10]
mov       rcx,[rax+10]
cmp       qword ptr [rcx+10],40
jle       short M01_L23
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rax
mov       rdx,7FFF54BE0810
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L24
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
lea       rcx,[rbx+8]
mov       rdx,[rbp+20]
call      CORINFO_HELP_ASSIGN_REF
mov       rax,rbx
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L25
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L26
jmp       short M01_L27
M01_L26
 
mov       rcx,rax
mov       rdx,7FFF54BDF9A8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L27
 
call      qword ptr [7FFF54BBC018]
nop
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L28
 
mov       ecx,6A7
mov       rdx,7FFF54BC72A0
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF54BBC888]
int       3
M01_L29
 
push      rbp
push      rsi
push      rbx
sub       rsp,30
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+60]
cmp       qword ptr [rbp-30],0
je        short M01_L30
mov       rcx,[rbp-30]
mov       r11,7FFF53FB1028
call      qword ptr [r11]
M01_L30
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rbp
ret
 
System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.Dictionary`2)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,0D8
lea       rbp,[rsp+110]
xor       eax,eax
mov       [rbp-0A0],rax
mov       [rbp-40],rcx
mov       rbx,rcx
mov       rsi,rdx
mov       rcx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFF540FEC70]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Comparer()
mov       rdi,rax
mov       rcx,[rbx+10]
mov       rdx,offset MT_System.String
cmp       [rcx],rdx
jne       near ptr M02_L27
mov       rcx,[rbx+10]
mov       rcx,[rcx+28]
test      rcx,rcx
je        short M02_L00
jmp       short M02_L01
M02_L00
 
mov       rcx,rbx
mov       rdx,7FFF54BE2A70
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L01
 
call      qword ptr [7FFF540FFC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
cmp       rax,rdi
jne       near ptr M02_L33
M02_L02
 
mov       rdx,rdi
mov       rcx,offset MT_System.Collections.Generic.IEqualityComparer`1[[System.String, System.Private.CoreLib]]
call      qword ptr [7FFF540F4390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       r14,rax
mov       rcx,[rbx+10]
mov       rdi,[rcx+30]
test      rdi,rdi
je        short M02_L03
jmp       short M02_L04
M02_L03
 
mov       rcx,rbx
mov       rdx,7FFF54BE2AB0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdi,rax
M02_L04
 
mov       rcx,rsi
call      qword ptr [7FFF540FECA0]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Keys()
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FFF5459EAC0]; System.Linq.Enumerable.ToArray[[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1)
mov       rdi,rax
test      rdi,rdi
je        short M02_L05
mov       rcx,offset MT_System.String[]
cmp       [rdi],rcx
je        short M02_L05
mov       rdx,rax
call      qword ptr [7FFF540F4390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       rdi,rax
M02_L05
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],38
jle       short M02_L06
mov       r15,[rcx+38]
test      r15,r15
je        short M02_L06
jmp       short M02_L07
M02_L06
 
mov       rcx,rbx
mov       rdx,7FFF54BE2B70
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r15,rax
M02_L07
 
mov       rcx,rsi
call      qword ptr [7FFF540FECE8]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Values()
mov       rdx,rax
mov       rcx,r15
call      qword ptr [7FFF5459EAC0]; System.Linq.Enumerable.ToArray[[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1)
mov       rsi,rax
mov       r15d,7FFFFFFF
xor       r13d,r13d
xor       r12d,r12d
xor       ecx,ecx
mov       eax,[rdi+8]
mov       [rbp-0A4],eax
test      eax,eax
jle       short M02_L13
M02_L08
 
mov       edx,ecx
mov       rdx,[rdi+rdx*8+10]
mov       edx,[rdx+8]
cmp       edx,r15d
jl        short M02_L15
M02_L09
 
cmp       edx,r13d
jg        short M02_L14
M02_L10
 
mov       r8d,1
shlx      rdx,r8,rdx
or        r12,rdx
inc       ecx
cmp       eax,ecx
jg        short M02_L12
M02_L11
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],40
jle       short M02_L16
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M02_L16
jmp       short M02_L17
M02_L12
 
mov       eax,[rbp-0A4]
jmp       short M02_L08
M02_L13
 
jmp       short M02_L11
M02_L14
 
mov       r13d,edx
jmp       short M02_L10
M02_L15
 
mov       r15d,edx
jmp       short M02_L09
M02_L16
 
mov       rcx,rbx
mov       rdx,7FFF54BE3880
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L17
 
mov       [rsp+20],r15d
mov       [rsp+28],r13d
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54C04810]; System.Collections.Frozen.LengthBucketsFrozenDictionary`1[[System.__Canon, System.Private.CoreLib]].CreateLengthBucketsFrozenDictionaryIfAppropriate(System.String[], System.__Canon[], System.Collections.Generic.IEqualityComparer`1, Int32, Int32)
test      rax,rax
jne       near ptr M02_L34
lea       r10,[rdi+10]
mov       r11d,[rbp-0A4]
mov       [rbp-0C0],r10
mov       [rbp-84],r11d
mov       rcx,22B26C002E0
xor       r9d,r9d
cmp       r14,[rcx]
sete      r9b
mov       [rbp-5C],r9d
test      r9d,r9d
jne       near ptr M02_L39
xor       r8d,r8d
movzx     edx,r8b
test      r15d,r15d
je        near ptr M02_L40
M02_L18
 
mov       [rbp-0A0],r10
mov       [rbp-98],r11d
mov       [rsp+20],r13d
lea       rcx,[rbp-80]
mov       [rsp+28],rcx
lea       rcx,[rbp-0A0]
mov       [rbp-60],edx
mov       r8d,r9d
mov       r9d,r15d
call      qword ptr [7FFF54C050B0]; System.Collections.Frozen.KeyAnalyzer.TryUseSubstring(System.ReadOnlySpan`1, Boolean, Boolean, Int32, Int32, AnalysisResults ByRef)
test      eax,eax
mov       edx,[rbp-60]
mov       r9d,[rbp-5C]
mov       r10,[rbp-0C0]
mov       r11d,[rbp-84]
je        near ptr M02_L40
M02_L19
 
movzx     eax,byte ptr [rbp-80]
mov       r13d,[rbp-7C]
mov       r15d,[rbp-78]
mov       r8d,[rbp-74]
mov       [rbp-8C],r8d
mov       r10d,[rbp-70]
mov       [rbp-90],r10d
movzx     ecx,byte ptr [rbp-7F]
mov       [rbp-57],cl
test      r15d,r15d
je        near ptr M02_L66
test      r13d,r13d
jl        near ptr M02_L42
test      eax,eax
jne       near ptr M02_L56
cmp       r15d,1
je        near ptr M02_L63
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],70
jle       short M02_L20
mov       rcx,[rcx+70]
test      rcx,rcx
je        short M02_L20
jmp       short M02_L21
M02_L20
 
mov       rcx,rbx
mov       rdx,7FFF54BE6E30
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L21
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54C06328]; System.Collections.Frozen.OrdinalStringFrozenDictionary`1[[System.__Canon, System.Private.CoreLib]]..ctor(System.String[], System.__Canon[], System.Collections.Generic.IEqualityComparer`1, Int32, Int32, Int32, Int32)
mov       rax,r12
M02_L22
 
mov       r12,rax
M02_L23
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],50
jle       short M02_L24
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M02_L24
jmp       short M02_L25
M02_L24
 
mov       rcx,rbx
mov       rdx,7FFF54BE4950
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L25
 
mov       rax,r12
test      rax,rax
je        short M02_L26
cmp       [rax],rcx
je        short M02_L26
mov       rdx,r12
call      qword ptr [7FFF540F43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
M02_L26
 
nop
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L27
 
mov       ecx,[rsi+38]
sub       ecx,[rsi+40]
cmp       ecx,4
jg        short M02_L30
mov       rcx,[rbx+10]
mov       rcx,[rcx+20]
test      rcx,rcx
je        short M02_L28
jmp       short M02_L29
M02_L28
 
mov       rcx,rbx
mov       rdx,7FFF54BE2900
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L29
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,rsi
call      qword ptr [7FFF54BBFB88]
mov       rax,rbx
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L30
 
mov       rcx,[rbx+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M02_L31
jmp       short M02_L32
M02_L31
 
mov       rcx,rbx
mov       rdx,7FFF54BE21C0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L32
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,rsi
xor       r8d,r8d
call      qword ptr [7FFF54BBEFB8]
mov       rax,rbx
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L33
 
mov       rcx,22B26C002D8
cmp       rdi,[rcx]
je        near ptr M02_L02
mov       rcx,22B26C002E0
cmp       rdi,[rcx]
jne       near ptr M02_L27
jmp       near ptr M02_L02
M02_L34
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],50
jle       short M02_L36
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M02_L35
jmp       short M02_L38
M02_L35
 
mov       [rbp-0B0],rax
jmp       short M02_L37
M02_L36
 
mov       [rbp-0B0],rax
M02_L37
 
mov       rcx,rbx
mov       rdx,7FFF54BE4950
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
mov       rax,[rbp-0B0]
M02_L38
 
mov       rdx,rax
call      qword ptr [7FFF540F43D8]; System.Runtime.CompilerServices.CastHelpers.ChkCastClass(Void*, System.Object)
nop
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L39
 
mov       [rbp-0A0],r10
mov       [rbp-98],r11d
lea       rcx,[rbp-0A0]
call      qword ptr [7FFF54C050E0]
mov       r8d,eax
movzx     edx,r8b
mov       eax,edx
test      r15d,r15d
mov       edx,eax
mov       r9d,[rbp-5C]
mov       r10,[rbp-0C0]
mov       r11d,[rbp-84]
jne       near ptr M02_L18
M02_L40
 
mov       rcx,22B26C14720
mov       rax,[rcx]
mov       [rbp-0C8],r10
mov       [rbp-88],r11d
mov       [rbp-64],edx
mov       [rbp-68],r9d
test      rax,rax
jne       short M02_L41
mov       rcx,offset MT_System.Collections.Frozen.KeyAnalyzer+GetSpan
call      CORINFO_HELP_NEWSFAST
mov       [rbp-0B8],rax
mov       rdx,22B26C14718
mov       rdx,[rdx]
mov       rcx,rax
mov       r8,offset System.Collections.Frozen.KeyAnalyzer+<>c.b__0_0(System.String, Int32, Int32)
call      qword ptr [7FFF540F4210]; System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
mov       rcx,22B26C14720
mov       rdx,[rbp-0B8]
call      CORINFO_HELP_ASSIGN_REF
mov       rax,[rbp-0B8]
M02_L41
 
mov       r8,[rbp-0C8]
mov       [rbp-0A0],r8
mov       r10d,[rbp-88]
mov       [rbp-98],r10d
mov       [rsp+20],r15d
mov       [rsp+28],r13d
xor       r8d,r8d
mov       [rsp+30],r8d
mov       [rsp+38],r8d
mov       [rsp+40],rax
lea       rdx,[rbp-0A0]
movzx     r8d,byte ptr [rbp-64]
movzx     r9d,byte ptr [rbp-68]
lea       rcx,[rbp-80]
call      qword ptr [7FFF54C050C8]; System.Collections.Frozen.KeyAnalyzer.CreateAnalysisResults(System.ReadOnlySpan`1, Boolean, Boolean, Int32, Int32, Int32, Int32, GetSpan)
jmp       near ptr M02_L19
M02_L42
 
test      eax,eax
je        near ptr M02_L49
cmp       byte ptr [rbp-57],0
jne       short M02_L45
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],0A0
jle       short M02_L43
mov       rcx,[rcx+0A0]
test      rcx,rcx
je        short M02_L43
jmp       short M02_L44
M02_L43
 
mov       rcx,rbx
mov       rdx,7FFF54BEA368
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L44
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54C253B0]
jmp       short M02_L48
M02_L45
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],98
jle       short M02_L46
mov       rcx,[rcx+98]
test      rcx,rcx
je        short M02_L46
jmp       short M02_L47
M02_L46
 
mov       rcx,rbx
mov       rdx,7FFF54BE9AE0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L47
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54C24930]
M02_L48
 
jmp       near ptr M02_L23
M02_L49
 
cmp       r15d,1
je        short M02_L52
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],90
jle       short M02_L50
mov       rcx,[rcx+90]
test      rcx,rcx
je        short M02_L50
jmp       short M02_L51
M02_L50
 
mov       rcx,rbx
mov       rdx,7FFF54BE9050
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L51
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54C0FDB0]
jmp       short M02_L55
M02_L52
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],88
jle       short M02_L53
mov       rcx,[rcx+88]
test      rcx,rcx
je        short M02_L53
jmp       short M02_L54
M02_L53
 
mov       rcx,rbx
mov       rdx,7FFF54BE87C8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L54
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       r15d,[rbp-8C]
mov       [rsp+20],r15d
mov       r15d,[rbp-90]
mov       [rsp+28],r15d
mov       [rsp+30],r13d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54C0F330]
M02_L55
 
jmp       near ptr M02_L23
M02_L56
 
cmp       byte ptr [rbp-57],0
jne       short M02_L59
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],80
jle       short M02_L57
mov       rcx,[rcx+80]
test      rcx,rcx
je        short M02_L57
jmp       short M02_L58
M02_L57
 
mov       rcx,rbx
mov       rdx,7FFF54BE7F40
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L58
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54C0E8B0]
jmp       short M02_L62
M02_L59
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],78
jle       short M02_L60
mov       rcx,[rcx+78]
test      rcx,rcx
je        short M02_L60
jmp       short M02_L61
M02_L60
 
mov       rcx,rbx
mov       rdx,7FFF54BE76B8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L61
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54C0DE30]
M02_L62
 
jmp       near ptr M02_L23
M02_L63
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],68
jle       short M02_L64
mov       rcx,[rcx+68]
test      rcx,rcx
je        short M02_L64
jmp       short M02_L65
M02_L64
 
mov       rcx,rbx
mov       rdx,7FFF54BE65A8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L65
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       r15d,[rbp-8C]
mov       [rsp+20],r15d
mov       r15d,[rbp-90]
mov       [rsp+28],r15d
mov       [rsp+30],r13d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54C0C930]
mov       rax,r12
jmp       near ptr M02_L22
M02_L66
 
test      eax,eax
je        near ptr M02_L73
cmp       byte ptr [rbp-57],0
jne       short M02_L69
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],60
jle       short M02_L67
mov       rcx,[rcx+60]
test      rcx,rcx
je        short M02_L67
jmp       short M02_L68
M02_L67
 
mov       rcx,rbx
mov       rdx,7FFF54BE5B90
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L68
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-8C]
mov       [rsp+20],r13d
mov       r13d,[rbp-90]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54C07B28]
jmp       short M02_L72
M02_L69
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],58
jle       short M02_L70
mov       rcx,[rcx+58]
test      rcx,rcx
je        short M02_L70
jmp       short M02_L71
M02_L70
 
mov       rcx,rbx
mov       rdx,7FFF54BE52F8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L71
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-8C]
mov       [rsp+20],r13d
mov       r13d,[rbp-90]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54C07060]
M02_L72
 
mov       r12,r15
jmp       near ptr M02_L23
M02_L73
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],48
jle       short M02_L74
mov       rcx,[rcx+48]
test      rcx,rcx
je        short M02_L74
jmp       short M02_L75
M02_L74
 
mov       rcx,rbx
mov       rdx,7FFF54BE4940
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L75
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-8C]
mov       [rsp+20],r13d
mov       r13d,[rbp-90]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54C06460]
mov       r12,r15
jmp       near ptr M02_L23
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToFrozenDictionary()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rdx,[rbx+280]
lea       r9,[rsp+28]
mov       rcx,offset MD_System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.IEnumerable`1>>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2> ByRef)
xor       r8d,r8d
call      qword ptr [7FFF54BE6850]; System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2 ByRef)
test      rax,rax
jne       short M00_L00
mov       rdx,[rsp+28]
mov       rcx,offset MD_System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.Dictionary`2>)
call      qword ptr [7FFF54BE6898]; System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.Dictionary`2)
M00_L00
 
xor       ecx,ecx
mov       [rsp+28],rcx
mov       [rsp+20],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2 ByRef)
push      rbp
push      rsi
push      rbx
sub       rsp,50
lea       rbp,[rsp+60]
xor       eax,eax
mov       [rbp-28],rax
mov       [rbp-20],rax
mov       [rbp-40],rsp
mov       [rbp-18],rcx
mov       [rbp+10],rcx
mov       [rbp+20],r8
mov       [rbp+28],r9
mov       rbx,rdx
test      rbx,rbx
je        near ptr M01_L28
cmp       qword ptr [rbp+20],0
jne       short M01_L01
mov       rdx,[rcx+10]
cmp       qword ptr [rdx+10],48
jle       near ptr M01_L06
mov       rdx,[rdx+48]
test      rdx,rdx
je        near ptr M01_L06
M01_L00
 
mov       rcx,rdx
call      qword ptr [7FFF540EFC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
mov       [rbp+20],rax
mov       rcx,[rbp+10]
M01_L01
 
mov       rdx,[rcx+10]
mov       r8,[rdx+18]
test      r8,r8
je        near ptr M01_L07
M01_L02
 
mov       rcx,r8
mov       rdx,rbx
call      qword ptr [7FFF540E4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L05
M01_L03
 
mov       rcx,[rbp+10]
mov       rdx,[rcx+10]
mov       rax,[rdx+20]
test      rax,rax
je        near ptr M01_L10
M01_L04
 
mov       rcx,rax
mov       rdx,rbx
call      qword ptr [7FFF540E4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rcx,[rbp+28]
mov       rdx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rcx,[rbp+28]
mov       rax,[rcx]
test      rax,rax
je        near ptr M01_L11
mov       rdx,rax
mov       r8d,[rdx+38]
sub       r8d,[rdx+40]
je        near ptr M01_L09
mov       rcx,rax
cmp       [rcx],ecx
call      qword ptr [7FFF540EEC70]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Comparer()
mov       rcx,rax
mov       rax,[rcx]
mov       rdx,offset MT_System.Collections.Generic.GenericEqualityComparer`1[[System.String, System.Private.CoreLib]]
cmp       rax,rdx
jne       short M01_L08
cmp       qword ptr [rbp+20],0
je        near ptr M01_L11
mov       rcx,[rcx]
mov       rdx,[rbp+20]
cmp       rcx,[rdx]
je        short M01_L09
jmp       near ptr M01_L11
M01_L05
 
mov       rcx,[rsi+8]
mov       rdx,[rbp+20]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L03
xor       eax,eax
mov       rcx,[rbp+28]
mov       [rcx],rax
mov       rax,rsi
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L06
 
mov       rdx,7FFF54C00980
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdx,rax
jmp       near ptr M01_L00
M01_L07
 
mov       rdx,7FFF54BFF9A8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
mov       r8,rcx
jmp       near ptr M01_L02
M01_L08
 
mov       rdx,[rbp+20]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        short M01_L11
M01_L09
 
mov       rcx,[rbp+28]
mov       rax,[rcx]
mov       ecx,[rax+38]
sub       ecx,[rax+40]
je        near ptr M01_L20
xor       eax,eax
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L10
 
mov       rdx,7FFF54BFFE58
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
jmp       near ptr M01_L04
M01_L11
 
mov       rax,[rbp+10]
mov       rdx,[rax+10]
mov       rdx,[rdx+20]
test      rdx,rdx
je        short M01_L12
jmp       short M01_L13
M01_L12
 
mov       rcx,rax
mov       rdx,7FFF54BFFE58
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdx,rax
M01_L13
 
mov       rcx,rdx
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       r8,[rbp+20]
xor       edx,edx
call      qword ptr [7FFF540EEBC8]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, System.Collections.Generic.IEqualityComparer`1)
mov       rcx,[rbp+28]
mov       rdx,rsi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       r11,[rcx+28]
test      r11,r11
je        short M01_L14
jmp       short M01_L15
M01_L14
 
mov       rcx,rax
mov       rdx,7FFF54BFFF40
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L15
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-30],rax
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L17
jmp       short M01_L18
M01_L17
 
mov       rcx,rax
mov       rdx,7FFF54BFFF60
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L18
 
lea       rdx,[rbp-28]
mov       rcx,[rbp-30]
call      qword ptr [r11]
mov       rcx,[rbp+28]
mov       rdx,[rcx]
mov       r8,[rbp-28]
mov       r9,[rbp-20]
cmp       [rdx],dl
mov       rcx,rdx
mov       rdx,r8
mov       r8,r9
mov       r9d,1
call      qword ptr [7FFF540EEE98]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].TryInsert(System.__Canon, System.__Canon, System.Collections.Generic.InsertionBehavior)
M01_L19
 
mov       rcx,[rbp-30]
mov       r11,7FFF53FA11C0
call      qword ptr [r11]
test      eax,eax
jne       short M01_L16
mov       rcx,rsp
call      M01_L29
jmp       near ptr M01_L09
M01_L20
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L21
jmp       short M01_L22
M01_L21
 
mov       rcx,rax
mov       rdx,7FFF54BFF9A8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L22
 
call      qword ptr [7FFF54BE60B8]
mov       rcx,[rax+8]
cmp       rcx,[rbp+20]
je        short M01_L25
mov       rax,[rbp+10]
mov       rcx,[rax+10]
cmp       qword ptr [rcx+10],40
jle       short M01_L23
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rax
mov       rdx,7FFF54C00810
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L24
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
lea       rcx,[rbx+8]
mov       rdx,[rbp+20]
call      CORINFO_HELP_ASSIGN_REF
mov       rax,rbx
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L25
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L26
jmp       short M01_L27
M01_L26
 
mov       rcx,rax
mov       rdx,7FFF54BFF9A8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L27
 
call      qword ptr [7FFF54BE60B8]
nop
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L28
 
mov       ecx,6A7
mov       rdx,7FFF54BD41B0
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF54BE6928]
int       3
M01_L29
 
push      rbp
push      rsi
push      rbx
sub       rsp,30
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+60]
cmp       qword ptr [rbp-30],0
je        short M01_L30
mov       rcx,[rbp-30]
mov       r11,7FFF53FA11C8
call      qword ptr [r11]
M01_L30
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rbp
ret
 
System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.Dictionary`2)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,0D8
lea       rbp,[rsp+110]
xor       eax,eax
mov       [rbp-0A0],rax
mov       [rbp-40],rcx
mov       rbx,rcx
mov       rsi,rdx
mov       rcx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFF540EEC70]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Comparer()
mov       rdi,rax
mov       rcx,[rbx+10]
mov       rdx,offset MT_System.String
cmp       [rcx],rdx
jne       near ptr M02_L27
mov       rcx,[rbx+10]
mov       rcx,[rcx+28]
test      rcx,rcx
je        short M02_L00
jmp       short M02_L01
M02_L00
 
mov       rcx,rbx
mov       rdx,7FFF54C02A70
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L01
 
call      qword ptr [7FFF540EFC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
cmp       rax,rdi
jne       near ptr M02_L33
M02_L02
 
mov       rdx,rdi
mov       rcx,offset MT_System.Collections.Generic.IEqualityComparer`1[[System.String, System.Private.CoreLib]]
call      qword ptr [7FFF540E4390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       r14,rax
mov       rcx,[rbx+10]
mov       rdi,[rcx+30]
test      rdi,rdi
je        short M02_L03
jmp       short M02_L04
M02_L03
 
mov       rcx,rbx
mov       rdx,7FFF54C02AB0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdi,rax
M02_L04
 
mov       rcx,rsi
call      qword ptr [7FFF540EECA0]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Keys()
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FFF5458EAC0]; System.Linq.Enumerable.ToArray[[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1)
mov       rdi,rax
test      rdi,rdi
je        short M02_L05
mov       rcx,offset MT_System.String[]
cmp       [rdi],rcx
je        short M02_L05
mov       rdx,rax
call      qword ptr [7FFF540E4390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       rdi,rax
M02_L05
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],38
jle       short M02_L06
mov       r15,[rcx+38]
test      r15,r15
je        short M02_L06
jmp       short M02_L07
M02_L06
 
mov       rcx,rbx
mov       rdx,7FFF54C02B70
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r15,rax
M02_L07
 
mov       rcx,rsi
call      qword ptr [7FFF540EECE8]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Values()
mov       rdx,rax
mov       rcx,r15
call      qword ptr [7FFF5458EAC0]; System.Linq.Enumerable.ToArray[[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1)
mov       rsi,rax
mov       r15d,7FFFFFFF
xor       r13d,r13d
xor       r12d,r12d
xor       ecx,ecx
mov       eax,[rdi+8]
mov       [rbp-0A4],eax
test      eax,eax
jle       short M02_L13
M02_L08
 
mov       edx,ecx
mov       rdx,[rdi+rdx*8+10]
mov       edx,[rdx+8]
cmp       edx,r15d
jl        short M02_L15
M02_L09
 
cmp       edx,r13d
jg        short M02_L14
M02_L10
 
mov       r8d,1
shlx      rdx,r8,rdx
or        r12,rdx
inc       ecx
cmp       eax,ecx
jg        short M02_L12
M02_L11
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],40
jle       short M02_L16
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M02_L16
jmp       short M02_L17
M02_L12
 
mov       eax,[rbp-0A4]
jmp       short M02_L08
M02_L13
 
jmp       short M02_L11
M02_L14
 
mov       r13d,edx
jmp       short M02_L10
M02_L15
 
mov       r15d,edx
jmp       short M02_L09
M02_L16
 
mov       rcx,rbx
mov       rdx,7FFF54C03880
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L17
 
mov       [rsp+20],r15d
mov       [rsp+28],r13d
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54BEE8F8]; System.Collections.Frozen.LengthBucketsFrozenDictionary`1[[System.__Canon, System.Private.CoreLib]].CreateLengthBucketsFrozenDictionaryIfAppropriate(System.String[], System.__Canon[], System.Collections.Generic.IEqualityComparer`1, Int32, Int32)
test      rax,rax
jne       near ptr M02_L34
lea       r10,[rdi+10]
mov       r11d,[rbp-0A4]
mov       [rbp-0C0],r10
mov       [rbp-84],r11d
mov       rcx,20F7D0002E0
xor       r9d,r9d
cmp       r14,[rcx]
sete      r9b
mov       [rbp-5C],r9d
test      r9d,r9d
jne       near ptr M02_L39
xor       r8d,r8d
movzx     edx,r8b
test      r15d,r15d
je        near ptr M02_L40
M02_L18
 
mov       [rbp-0A0],r10
mov       [rbp-98],r11d
mov       [rsp+20],r13d
lea       rcx,[rbp-80]
mov       [rsp+28],rcx
lea       rcx,[rbp-0A0]
mov       [rbp-60],edx
mov       r8d,r9d
mov       r9d,r15d
call      qword ptr [7FFF54BEF198]; System.Collections.Frozen.KeyAnalyzer.TryUseSubstring(System.ReadOnlySpan`1, Boolean, Boolean, Int32, Int32, AnalysisResults ByRef)
test      eax,eax
mov       edx,[rbp-60]
mov       r9d,[rbp-5C]
mov       r10,[rbp-0C0]
mov       r11d,[rbp-84]
je        near ptr M02_L40
M02_L19
 
movzx     eax,byte ptr [rbp-80]
mov       r13d,[rbp-7C]
mov       r15d,[rbp-78]
mov       r8d,[rbp-74]
mov       [rbp-8C],r8d
mov       r10d,[rbp-70]
mov       [rbp-90],r10d
movzx     ecx,byte ptr [rbp-7F]
mov       [rbp-57],cl
test      r15d,r15d
je        near ptr M02_L66
test      r13d,r13d
jl        near ptr M02_L42
test      eax,eax
jne       near ptr M02_L56
cmp       r15d,1
je        near ptr M02_L63
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],70
jle       short M02_L20
mov       rcx,[rcx+70]
test      rcx,rcx
je        short M02_L20
jmp       short M02_L21
M02_L20
 
mov       rcx,rbx
mov       rdx,7FFF54C06E30
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L21
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54C24480]; System.Collections.Frozen.OrdinalStringFrozenDictionary`1[[System.__Canon, System.Private.CoreLib]]..ctor(System.String[], System.__Canon[], System.Collections.Generic.IEqualityComparer`1, Int32, Int32, Int32, Int32)
mov       rax,r12
M02_L22
 
mov       r12,rax
M02_L23
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],50
jle       short M02_L24
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M02_L24
jmp       short M02_L25
M02_L24
 
mov       rcx,rbx
mov       rdx,7FFF54C04950
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L25
 
mov       rax,r12
test      rax,rax
je        short M02_L26
cmp       [rax],rcx
je        short M02_L26
mov       rdx,r12
call      qword ptr [7FFF540E43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
M02_L26
 
nop
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L27
 
mov       ecx,[rsi+38]
sub       ecx,[rsi+40]
cmp       ecx,4
jg        short M02_L30
mov       rcx,[rbx+10]
mov       rcx,[rcx+20]
test      rcx,rcx
je        short M02_L28
jmp       short M02_L29
M02_L28
 
mov       rcx,rbx
mov       rdx,7FFF54C02900
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L29
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,rsi
call      qword ptr [7FFF54BEDE90]
mov       rax,rbx
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L30
 
mov       rcx,[rbx+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M02_L31
jmp       short M02_L32
M02_L31
 
mov       rcx,rbx
mov       rdx,7FFF54C021C0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L32
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,rsi
xor       r8d,r8d
call      qword ptr [7FFF54BED2C0]
mov       rax,rbx
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L33
 
mov       rcx,20F7D0002D8
cmp       rdi,[rcx]
je        near ptr M02_L02
mov       rcx,20F7D0002E0
cmp       rdi,[rcx]
jne       near ptr M02_L27
jmp       near ptr M02_L02
M02_L34
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],50
jle       short M02_L36
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M02_L35
jmp       short M02_L38
M02_L35
 
mov       [rbp-0B0],rax
jmp       short M02_L37
M02_L36
 
mov       [rbp-0B0],rax
M02_L37
 
mov       rcx,rbx
mov       rdx,7FFF54C04950
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
mov       rax,[rbp-0B0]
M02_L38
 
mov       rdx,rax
call      qword ptr [7FFF540E43D8]; System.Runtime.CompilerServices.CastHelpers.ChkCastClass(Void*, System.Object)
nop
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L39
 
mov       [rbp-0A0],r10
mov       [rbp-98],r11d
lea       rcx,[rbp-0A0]
call      qword ptr [7FFF54BEF1C8]
mov       r8d,eax
movzx     edx,r8b
mov       eax,edx
test      r15d,r15d
mov       edx,eax
mov       r9d,[rbp-5C]
mov       r10,[rbp-0C0]
mov       r11d,[rbp-84]
jne       near ptr M02_L18
M02_L40
 
mov       rcx,20F7D014720
mov       rax,[rcx]
mov       [rbp-0C8],r10
mov       [rbp-88],r11d
mov       [rbp-64],edx
mov       [rbp-68],r9d
test      rax,rax
jne       short M02_L41
mov       rcx,offset MT_System.Collections.Frozen.KeyAnalyzer+GetSpan
call      CORINFO_HELP_NEWSFAST
mov       [rbp-0B8],rax
mov       rdx,20F7D014718
mov       rdx,[rdx]
mov       rcx,rax
mov       r8,offset System.Collections.Frozen.KeyAnalyzer+<>c.b__0_0(System.String, Int32, Int32)
call      qword ptr [7FFF540E4210]; System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
mov       rcx,20F7D014720
mov       rdx,[rbp-0B8]
call      CORINFO_HELP_ASSIGN_REF
mov       rax,[rbp-0B8]
M02_L41
 
mov       r8,[rbp-0C8]
mov       [rbp-0A0],r8
mov       r10d,[rbp-88]
mov       [rbp-98],r10d
mov       [rsp+20],r15d
mov       [rsp+28],r13d
xor       r8d,r8d
mov       [rsp+30],r8d
mov       [rsp+38],r8d
mov       [rsp+40],rax
lea       rdx,[rbp-0A0]
movzx     r8d,byte ptr [rbp-64]
movzx     r9d,byte ptr [rbp-68]
lea       rcx,[rbp-80]
call      qword ptr [7FFF54BEF1B0]; System.Collections.Frozen.KeyAnalyzer.CreateAnalysisResults(System.ReadOnlySpan`1, Boolean, Boolean, Int32, Int32, Int32, Int32, GetSpan)
jmp       near ptr M02_L19
M02_L42
 
test      eax,eax
je        near ptr M02_L49
cmp       byte ptr [rbp-57],0
jne       short M02_L45
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],0A0
jle       short M02_L43
mov       rcx,[rcx+0A0]
test      rcx,rcx
je        short M02_L43
jmp       short M02_L44
M02_L43
 
mov       rcx,rbx
mov       rdx,7FFF54C0A368
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L44
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54C2F330]
jmp       short M02_L48
M02_L45
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],98
jle       short M02_L46
mov       rcx,[rcx+98]
test      rcx,rcx
je        short M02_L46
jmp       short M02_L47
M02_L46
 
mov       rcx,rbx
mov       rdx,7FFF54C09AE0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L47
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54C2E8B0]
M02_L48
 
jmp       near ptr M02_L23
M02_L49
 
cmp       r15d,1
je        short M02_L52
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],90
jle       short M02_L50
mov       rcx,[rcx+90]
test      rcx,rcx
je        short M02_L50
jmp       short M02_L51
M02_L50
 
mov       rcx,rbx
mov       rdx,7FFF54C09050
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L51
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54C2DE30]
jmp       short M02_L55
M02_L52
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],88
jle       short M02_L53
mov       rcx,[rcx+88]
test      rcx,rcx
je        short M02_L53
jmp       short M02_L54
M02_L53
 
mov       rcx,rbx
mov       rdx,7FFF54C087C8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L54
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       r15d,[rbp-8C]
mov       [rsp+20],r15d
mov       r15d,[rbp-90]
mov       [rsp+28],r15d
mov       [rsp+30],r13d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54C2D3B0]
M02_L55
 
jmp       near ptr M02_L23
M02_L56
 
cmp       byte ptr [rbp-57],0
jne       short M02_L59
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],80
jle       short M02_L57
mov       rcx,[rcx+80]
test      rcx,rcx
je        short M02_L57
jmp       short M02_L58
M02_L57
 
mov       rcx,rbx
mov       rdx,7FFF54C07F40
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L58
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54C2C930]
jmp       short M02_L62
M02_L59
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],78
jle       short M02_L60
mov       rcx,[rcx+78]
test      rcx,rcx
je        short M02_L60
jmp       short M02_L61
M02_L60
 
mov       rcx,rbx
mov       rdx,7FFF54C076B8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L61
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54C27C30]
M02_L62
 
jmp       near ptr M02_L23
M02_L63
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],68
jle       short M02_L64
mov       rcx,[rcx+68]
test      rcx,rcx
je        short M02_L64
jmp       short M02_L65
M02_L64
 
mov       rcx,rbx
mov       rdx,7FFF54C065A8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L65
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       r15d,[rbp-8C]
mov       [rsp+20],r15d
mov       r15d,[rbp-90]
mov       [rsp+28],r15d
mov       [rsp+30],r13d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54C26730]
mov       rax,r12
jmp       near ptr M02_L22
M02_L66
 
test      eax,eax
je        near ptr M02_L73
cmp       byte ptr [rbp-57],0
jne       short M02_L69
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],60
jle       short M02_L67
mov       rcx,[rcx+60]
test      rcx,rcx
je        short M02_L67
jmp       short M02_L68
M02_L67
 
mov       rcx,rbx
mov       rdx,7FFF54C05B90
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L68
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-8C]
mov       [rsp+20],r13d
mov       r13d,[rbp-90]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54C25C80]
jmp       short M02_L72
M02_L69
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],58
jle       short M02_L70
mov       rcx,[rcx+58]
test      rcx,rcx
je        short M02_L70
jmp       short M02_L71
M02_L70
 
mov       rcx,rbx
mov       rdx,7FFF54C052F8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L71
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-8C]
mov       [rsp+20],r13d
mov       r13d,[rbp-90]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54C251B8]
M02_L72
 
mov       r12,r15
jmp       near ptr M02_L23
M02_L73
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],48
jle       short M02_L74
mov       rcx,[rcx+48]
test      rcx,rcx
je        short M02_L74
jmp       short M02_L75
M02_L74
 
mov       rcx,rbx
mov       rdx,7FFF54C04940
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L75
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-8C]
mov       [rsp+20],r13d
mov       r13d,[rbp-90]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54C245B8]
mov       r12,r15
jmp       near ptr M02_L23
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToFrozenDictionary()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rdx,[rbx+280]
lea       r9,[rsp+28]
mov       rcx,offset MD_System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.IEnumerable`1>>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2> ByRef)
xor       r8d,r8d
call      qword ptr [7FFF54CB77B0]; System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2 ByRef)
test      rax,rax
jne       short M00_L00
mov       rdx,[rsp+28]
mov       rcx,offset MD_System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.Dictionary`2>)
call      qword ptr [7FFF54CB77F8]; System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.Dictionary`2)
M00_L00
 
xor       ecx,ecx
mov       [rsp+28],rcx
mov       [rsp+20],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2 ByRef)
push      rbp
push      rsi
push      rbx
sub       rsp,50
lea       rbp,[rsp+60]
xor       eax,eax
mov       [rbp-28],rax
mov       [rbp-20],rax
mov       [rbp-40],rsp
mov       [rbp-18],rcx
mov       [rbp+10],rcx
mov       [rbp+20],r8
mov       [rbp+28],r9
mov       rbx,rdx
test      rbx,rbx
je        near ptr M01_L28
cmp       qword ptr [rbp+20],0
jne       short M01_L01
mov       rdx,[rcx+10]
cmp       qword ptr [rdx+10],48
jle       near ptr M01_L06
mov       rdx,[rdx+48]
test      rdx,rdx
je        near ptr M01_L06
M01_L00
 
mov       rcx,rdx
call      qword ptr [7FFF540EFC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
mov       [rbp+20],rax
mov       rcx,[rbp+10]
M01_L01
 
mov       rdx,[rcx+10]
mov       r8,[rdx+18]
test      r8,r8
je        near ptr M01_L07
M01_L02
 
mov       rcx,r8
mov       rdx,rbx
call      qword ptr [7FFF540E4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L05
M01_L03
 
mov       rcx,[rbp+10]
mov       rdx,[rcx+10]
mov       rax,[rdx+20]
test      rax,rax
je        near ptr M01_L10
M01_L04
 
mov       rcx,rax
mov       rdx,rbx
call      qword ptr [7FFF540E4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rcx,[rbp+28]
mov       rdx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rcx,[rbp+28]
mov       rax,[rcx]
test      rax,rax
je        near ptr M01_L11
mov       rdx,rax
mov       r8d,[rdx+38]
sub       r8d,[rdx+40]
je        near ptr M01_L09
mov       rcx,rax
cmp       [rcx],ecx
call      qword ptr [7FFF540EEC70]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Comparer()
mov       rcx,rax
mov       rax,[rcx]
mov       rdx,offset MT_System.Collections.Generic.GenericEqualityComparer`1[[System.String, System.Private.CoreLib]]
cmp       rax,rdx
jne       short M01_L08
cmp       qword ptr [rbp+20],0
je        near ptr M01_L11
mov       rcx,[rcx]
mov       rdx,[rbp+20]
cmp       rcx,[rdx]
je        short M01_L09
jmp       near ptr M01_L11
M01_L05
 
mov       rcx,[rsi+8]
mov       rdx,[rbp+20]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L03
xor       eax,eax
mov       rcx,[rbp+28]
mov       [rcx],rax
mov       rax,rsi
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L06
 
mov       rdx,7FFF54CD3D00
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdx,rax
jmp       near ptr M01_L00
M01_L07
 
mov       rdx,7FFF54CD2D30
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
mov       r8,rcx
jmp       near ptr M01_L02
M01_L08
 
mov       rdx,[rbp+20]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        short M01_L11
M01_L09
 
mov       rcx,[rbp+28]
mov       rax,[rcx]
mov       ecx,[rax+38]
sub       ecx,[rax+40]
je        near ptr M01_L20
xor       eax,eax
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L10
 
mov       rdx,7FFF54CD31E0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
jmp       near ptr M01_L04
M01_L11
 
mov       rax,[rbp+10]
mov       rdx,[rax+10]
mov       rdx,[rdx+20]
test      rdx,rdx
je        short M01_L12
jmp       short M01_L13
M01_L12
 
mov       rcx,rax
mov       rdx,7FFF54CD31E0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdx,rax
M01_L13
 
mov       rcx,rdx
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       r8,[rbp+20]
xor       edx,edx
call      qword ptr [7FFF540EEBC8]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, System.Collections.Generic.IEqualityComparer`1)
mov       rcx,[rbp+28]
mov       rdx,rsi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       r11,[rcx+28]
test      r11,r11
je        short M01_L14
jmp       short M01_L15
M01_L14
 
mov       rcx,rax
mov       rdx,7FFF54CD32C8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L15
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-30],rax
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L17
jmp       short M01_L18
M01_L17
 
mov       rcx,rax
mov       rdx,7FFF54CD32E8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L18
 
lea       rdx,[rbp-28]
mov       rcx,[rbp-30]
call      qword ptr [r11]
mov       rcx,[rbp+28]
mov       rdx,[rcx]
mov       r8,[rbp-28]
mov       r9,[rbp-20]
cmp       [rdx],dl
mov       rcx,rdx
mov       rdx,r8
mov       r8,r9
mov       r9d,1
call      qword ptr [7FFF540EEE98]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].TryInsert(System.__Canon, System.__Canon, System.Collections.Generic.InsertionBehavior)
M01_L19
 
mov       rcx,[rbp-30]
mov       r11,7FFF53FA19F0
call      qword ptr [r11]
test      eax,eax
jne       short M01_L16
mov       rcx,rsp
call      M01_L29
jmp       near ptr M01_L09
M01_L20
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L21
jmp       short M01_L22
M01_L21
 
mov       rcx,rax
mov       rdx,7FFF54CD2D30
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L22
 
call      qword ptr [7FFF54CB7018]
mov       rcx,[rax+8]
cmp       rcx,[rbp+20]
je        short M01_L25
mov       rax,[rbp+10]
mov       rcx,[rax+10]
cmp       qword ptr [rcx+10],40
jle       short M01_L23
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rax
mov       rdx,7FFF54CD3B90
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L24
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
lea       rcx,[rbx+8]
mov       rdx,[rbp+20]
call      CORINFO_HELP_ASSIGN_REF
mov       rax,rbx
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L25
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L26
jmp       short M01_L27
M01_L26
 
mov       rcx,rax
mov       rdx,7FFF54CD2D30
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L27
 
call      qword ptr [7FFF54CB7018]
nop
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L28
 
mov       ecx,6A7
mov       rdx,7FFF54CC27A8
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF54CB7888]
int       3
M01_L29
 
push      rbp
push      rsi
push      rbx
sub       rsp,30
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+60]
cmp       qword ptr [rbp-30],0
je        short M01_L30
mov       rcx,[rbp-30]
mov       r11,7FFF53FA19F8
call      qword ptr [r11]
M01_L30
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rbp
ret
 
System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.Dictionary`2)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,0D8
lea       rbp,[rsp+110]
xor       eax,eax
mov       [rbp-0A0],rax
mov       [rbp-40],rcx
mov       rbx,rcx
mov       rsi,rdx
mov       rcx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFF540EEC70]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Comparer()
mov       rdi,rax
mov       rcx,[rbx+10]
mov       rdx,offset MT_System.String
cmp       [rcx],rdx
jne       near ptr M02_L28
mov       rcx,[rbx+10]
mov       rcx,[rcx+28]
test      rcx,rcx
je        short M02_L00
jmp       short M02_L01
M02_L00
 
mov       rcx,rbx
mov       rdx,7FFF54CD5DF0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L01
 
call      qword ptr [7FFF540EFC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
cmp       rax,rdi
jne       near ptr M02_L34
M02_L02
 
mov       rdx,rdi
mov       rcx,offset MT_System.Collections.Generic.IEqualityComparer`1[[System.String, System.Private.CoreLib]]
call      qword ptr [7FFF540E4390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       r14,rax
mov       rcx,[rbx+10]
mov       rdi,[rcx+30]
test      rdi,rdi
je        short M02_L03
jmp       short M02_L04
M02_L03
 
mov       rcx,rbx
mov       rdx,7FFF54CD5E30
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdi,rax
M02_L04
 
mov       rcx,rsi
call      qword ptr [7FFF540EECA0]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Keys()
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FFF5458EAC0]; System.Linq.Enumerable.ToArray[[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1)
mov       rdi,rax
test      rdi,rdi
je        short M02_L05
mov       rcx,offset MT_System.String[]
cmp       [rdi],rcx
je        short M02_L05
mov       rdx,rax
call      qword ptr [7FFF540E4390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       rdi,rax
M02_L05
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],38
jle       short M02_L06
mov       r15,[rcx+38]
test      r15,r15
je        short M02_L06
jmp       short M02_L07
M02_L06
 
mov       rcx,rbx
mov       rdx,7FFF54CD5EF0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r15,rax
M02_L07
 
mov       rcx,rsi
call      qword ptr [7FFF540EECE8]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Values()
mov       rdx,rax
mov       rcx,r15
call      qword ptr [7FFF5458EAC0]; System.Linq.Enumerable.ToArray[[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1)
mov       rsi,rax
mov       r15d,7FFFFFFF
xor       r13d,r13d
xor       r12d,r12d
xor       ecx,ecx
mov       eax,[rdi+8]
mov       [rbp-0A4],eax
test      eax,eax
jle       short M02_L13
M02_L08
 
mov       edx,ecx
mov       rdx,[rdi+rdx*8+10]
mov       edx,[rdx+8]
cmp       edx,r15d
jl        short M02_L15
M02_L09
 
cmp       edx,r13d
jg        short M02_L14
M02_L10
 
mov       r8d,1
shlx      rdx,r8,rdx
or        r12,rdx
inc       ecx
cmp       eax,ecx
jg        short M02_L12
M02_L11
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],40
jle       near ptr M02_L19
mov       rcx,[rcx+40]
test      rcx,rcx
je        near ptr M02_L19
jmp       near ptr M02_L20
M02_L12
 
mov       eax,[rbp-0A4]
jmp       short M02_L08
M02_L13
 
jmp       short M02_L11
M02_L14
 
mov       r13d,edx
jmp       short M02_L10
M02_L15
 
mov       r15d,edx
jmp       short M02_L09
M02_L16
 
mov       r10d,[rbp-5C]
xor       eax,eax
M02_L17
 
movzx     eax,al
mov       [rbp-60],eax
test      r15d,r15d
je        near ptr M02_L40
mov       [rbp-0A0],rdx
mov       [rbp-98],r8d
mov       [rsp+20],r13d
lea       rcx,[rbp-80]
mov       [rsp+28],rcx
lea       rcx,[rbp-0A0]
mov       edx,eax
mov       r8d,r10d
mov       r9d,r15d
call      qword ptr [7FFF54CF40A8]; System.Collections.Frozen.KeyAnalyzer.TryUseSubstring(System.ReadOnlySpan`1, Boolean, Boolean, Int32, Int32, AnalysisResults ByRef)
test      eax,eax
mov       eax,[rbp-60]
mov       rdx,[rbp-0C0]
mov       r8d,[rbp-84]
mov       r10d,[rbp-5C]
je        near ptr M02_L40
M02_L18
 
movzx     eax,byte ptr [rbp-80]
mov       r13d,[rbp-7C]
mov       r15d,[rbp-78]
mov       r8d,[rbp-74]
mov       [rbp-8C],r8d
mov       r10d,[rbp-70]
mov       [rbp-90],r10d
movzx     ecx,byte ptr [rbp-7F]
mov       [rbp-57],cl
test      r15d,r15d
je        near ptr M02_L66
test      r13d,r13d
jl        near ptr M02_L42
test      eax,eax
jne       near ptr M02_L56
cmp       r15d,1
je        near ptr M02_L63
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],70
jle       near ptr M02_L21
mov       rcx,[rcx+70]
test      rcx,rcx
je        near ptr M02_L21
jmp       near ptr M02_L22
M02_L19
 
mov       rcx,rbx
mov       rdx,7FFF54CD6C00
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L20
 
mov       [rsp+20],r15d
mov       [rsp+28],r13d
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54CBF7B0]; System.Collections.Frozen.LengthBucketsFrozenDictionary`1[[System.__Canon, System.Private.CoreLib]].CreateLengthBucketsFrozenDictionaryIfAppropriate(System.String[], System.__Canon[], System.Collections.Generic.IEqualityComparer`1, Int32, Int32)
test      rax,rax
jne       near ptr M02_L35
lea       rdx,[rdi+10]
mov       r8d,[rbp-0A4]
mov       [rbp-0C0],rdx
mov       [rbp-84],r8d
mov       rcx,26194C002E0
xor       r10d,r10d
cmp       r14,[rcx]
sete      r10b
mov       [rbp-5C],r10d
test      r10d,r10d
je        near ptr M02_L16
mov       [rbp-0A0],rdx
mov       [rbp-98],r8d
lea       rcx,[rbp-0A0]
call      qword ptr [7FFF54CF40D8]
mov       rdx,[rbp-0C0]
mov       r8d,[rbp-84]
mov       r10d,[rbp-5C]
jmp       near ptr M02_L17
M02_L21
 
mov       rcx,rbx
mov       rdx,7FFF54CDA1B0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L22
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54CF5320]; System.Collections.Frozen.OrdinalStringFrozenDictionary`1[[System.__Canon, System.Private.CoreLib]]..ctor(System.String[], System.__Canon[], System.Collections.Generic.IEqualityComparer`1, Int32, Int32, Int32, Int32)
mov       rax,r12
M02_L23
 
mov       r12,rax
M02_L24
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],50
jle       short M02_L25
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M02_L25
jmp       short M02_L26
M02_L25
 
mov       rcx,rbx
mov       rdx,7FFF54CD7CD0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L26
 
mov       rax,r12
test      rax,rax
je        short M02_L27
cmp       [rax],rcx
je        short M02_L27
mov       rdx,r12
call      qword ptr [7FFF540E43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
M02_L27
 
nop
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L28
 
mov       ecx,[rsi+38]
sub       ecx,[rsi+40]
cmp       ecx,4
jg        short M02_L31
mov       rcx,[rbx+10]
mov       rcx,[rcx+20]
test      rcx,rcx
je        short M02_L29
jmp       short M02_L30
M02_L29
 
mov       rcx,rbx
mov       rdx,7FFF54CD5C80
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L30
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,rsi
call      qword ptr [7FFF54CBED48]
mov       rax,rbx
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L31
 
mov       rcx,[rbx+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M02_L32
jmp       short M02_L33
M02_L32
 
mov       rcx,rbx
mov       rdx,7FFF54CD5540
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L33
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,rsi
xor       r8d,r8d
call      qword ptr [7FFF54CBE178]
mov       rax,rbx
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L34
 
mov       rcx,26194C002D8
cmp       rdi,[rcx]
je        near ptr M02_L02
mov       rcx,26194C002E0
cmp       rdi,[rcx]
jne       near ptr M02_L28
jmp       near ptr M02_L02
M02_L35
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],50
jle       short M02_L37
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M02_L36
jmp       short M02_L39
M02_L36
 
mov       [rbp-0B0],rax
jmp       short M02_L38
M02_L37
 
mov       [rbp-0B0],rax
M02_L38
 
mov       rcx,rbx
mov       rdx,7FFF54CD7CD0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
mov       rax,[rbp-0B0]
M02_L39
 
mov       rdx,rax
call      qword ptr [7FFF540E43D8]; System.Runtime.CompilerServices.CastHelpers.ChkCastClass(Void*, System.Object)
nop
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L40
 
mov       rcx,26194C14720
mov       r9,[rcx]
mov       [rbp-0C8],rdx
mov       [rbp-88],r8d
mov       [rbp-64],eax
mov       [rbp-68],r10d
test      r9,r9
jne       short M02_L41
mov       rcx,offset MT_System.Collections.Frozen.KeyAnalyzer+GetSpan
call      CORINFO_HELP_NEWSFAST
mov       r9,rax
mov       [rbp-0B8],r9
mov       rdx,26194C14718
mov       rdx,[rdx]
mov       rcx,r9
mov       r8,offset System.Collections.Frozen.KeyAnalyzer+<>c.b__0_0(System.String, Int32, Int32)
call      qword ptr [7FFF540E4210]; System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
mov       rcx,26194C14720
mov       rdx,[rbp-0B8]
call      CORINFO_HELP_ASSIGN_REF
mov       r9,[rbp-0B8]
M02_L41
 
mov       rdx,[rbp-0C8]
mov       [rbp-0A0],rdx
mov       r8d,[rbp-88]
mov       [rbp-98],r8d
mov       [rsp+20],r15d
mov       [rsp+28],r13d
xor       edx,edx
mov       [rsp+30],edx
mov       [rsp+38],edx
mov       [rsp+40],r9
lea       rdx,[rbp-0A0]
movzx     r8d,byte ptr [rbp-64]
movzx     r9d,byte ptr [rbp-68]
lea       rcx,[rbp-80]
call      qword ptr [7FFF54CF40C0]; System.Collections.Frozen.KeyAnalyzer.CreateAnalysisResults(System.ReadOnlySpan`1, Boolean, Boolean, Int32, Int32, Int32, Int32, GetSpan)
jmp       near ptr M02_L18
M02_L42
 
test      eax,eax
je        near ptr M02_L49
cmp       byte ptr [rbp-57],0
jne       short M02_L45
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],0A0
jle       short M02_L43
mov       rcx,[rcx+0A0]
test      rcx,rcx
je        short M02_L43
jmp       short M02_L44
M02_L43
 
mov       rcx,rbx
mov       rdx,7FFF54CDD6E8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L44
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54D14000]
jmp       short M02_L48
M02_L45
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],98
jle       short M02_L46
mov       rcx,[rcx+98]
test      rcx,rcx
je        short M02_L46
jmp       short M02_L47
M02_L46
 
mov       rcx,rbx
mov       rdx,7FFF54CDCE60
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L47
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54CFF510]
M02_L48
 
jmp       near ptr M02_L24
M02_L49
 
cmp       r15d,1
je        short M02_L52
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],90
jle       short M02_L50
mov       rcx,[rcx+90]
test      rcx,rcx
je        short M02_L50
jmp       short M02_L51
M02_L50
 
mov       rcx,rbx
mov       rdx,7FFF54CDC3D0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L51
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54CFEA90]
jmp       short M02_L55
M02_L52
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],88
jle       short M02_L53
mov       rcx,[rcx+88]
test      rcx,rcx
je        short M02_L53
jmp       short M02_L54
M02_L53
 
mov       rcx,rbx
mov       rdx,7FFF54CDBB48
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L54
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       r15d,[rbp-8C]
mov       [rsp+20],r15d
mov       r15d,[rbp-90]
mov       [rsp+28],r15d
mov       [rsp+30],r13d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54CFE010]
M02_L55
 
jmp       near ptr M02_L24
M02_L56
 
cmp       byte ptr [rbp-57],0
jne       short M02_L59
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],80
jle       short M02_L57
mov       rcx,[rcx+80]
test      rcx,rcx
je        short M02_L57
jmp       short M02_L58
M02_L57
 
mov       rcx,rbx
mov       rdx,7FFF54CDB2C0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L58
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54CFD590]
jmp       short M02_L62
M02_L59
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],78
jle       short M02_L60
mov       rcx,[rcx+78]
test      rcx,rcx
je        short M02_L60
jmp       short M02_L61
M02_L60
 
mov       rcx,rbx
mov       rdx,7FFF54CDAA38
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L61
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54CFCB10]
M02_L62
 
jmp       near ptr M02_L24
M02_L63
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],68
jle       short M02_L64
mov       rcx,[rcx+68]
test      rcx,rcx
je        short M02_L64
jmp       short M02_L65
M02_L64
 
mov       rcx,rbx
mov       rdx,7FFF54CD9928
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L65
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       r15d,[rbp-8C]
mov       [rsp+20],r15d
mov       r15d,[rbp-90]
mov       [rsp+28],r15d
mov       [rsp+30],r13d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54CF75D0]
mov       rax,r12
jmp       near ptr M02_L23
M02_L66
 
test      eax,eax
je        near ptr M02_L73
cmp       byte ptr [rbp-57],0
jne       short M02_L69
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],60
jle       short M02_L67
mov       rcx,[rcx+60]
test      rcx,rcx
je        short M02_L67
jmp       short M02_L68
M02_L67
 
mov       rcx,rbx
mov       rdx,7FFF54CD8F10
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L68
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-8C]
mov       [rsp+20],r13d
mov       r13d,[rbp-90]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54CF6B20]
jmp       short M02_L72
M02_L69
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],58
jle       short M02_L70
mov       rcx,[rcx+58]
test      rcx,rcx
je        short M02_L70
jmp       short M02_L71
M02_L70
 
mov       rcx,rbx
mov       rdx,7FFF54CD8678
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L71
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-8C]
mov       [rsp+20],r13d
mov       r13d,[rbp-90]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54CF6058]
M02_L72
 
mov       r12,r15
jmp       near ptr M02_L24
M02_L73
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],48
jle       short M02_L74
mov       rcx,[rcx+48]
test      rcx,rcx
je        short M02_L74
jmp       short M02_L75
M02_L74
 
mov       rcx,rbx
mov       rdx,7FFF54CD7CC0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L75
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-8C]
mov       [rsp+20],r13d
mov       r13d,[rbp-90]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54CF5458]
mov       r12,r15
jmp       near ptr M02_L24
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToFrozenDictionary()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rdx,[rbx+280]
lea       r9,[rsp+28]
mov       rcx,offset MD_System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.IEnumerable`1>>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2> ByRef)
xor       r8d,r8d
call      qword ptr [7FFF54DAEE20]; System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2 ByRef)
test      rax,rax
jne       short M00_L00
mov       rdx,[rsp+28]
mov       rcx,offset MD_System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.Dictionary`2>)
call      qword ptr [7FFF54DAEE68]; System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.Dictionary`2)
M00_L00
 
xor       ecx,ecx
mov       [rsp+28],rcx
mov       [rsp+20],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2 ByRef)
push      rbp
push      rsi
push      rbx
sub       rsp,50
lea       rbp,[rsp+60]
xor       eax,eax
mov       [rbp-28],rax
mov       [rbp-20],rax
mov       [rbp-40],rsp
mov       [rbp-18],rcx
mov       [rbp+10],rcx
mov       [rbp+20],r8
mov       [rbp+28],r9
mov       rbx,rdx
test      rbx,rbx
je        near ptr M01_L28
cmp       qword ptr [rbp+20],0
jne       short M01_L01
mov       rdx,[rcx+10]
cmp       qword ptr [rdx+10],48
jle       near ptr M01_L06
mov       rdx,[rdx+48]
test      rdx,rdx
je        near ptr M01_L06
M01_L00
 
mov       rcx,rdx
call      qword ptr [7FFF540EFC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
mov       [rbp+20],rax
mov       rcx,[rbp+10]
M01_L01
 
mov       rdx,[rcx+10]
mov       r8,[rdx+18]
test      r8,r8
je        near ptr M01_L07
M01_L02
 
mov       rcx,r8
mov       rdx,rbx
call      qword ptr [7FFF540E4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L05
M01_L03
 
mov       rcx,[rbp+10]
mov       rdx,[rcx+10]
mov       rax,[rdx+20]
test      rax,rax
je        near ptr M01_L10
M01_L04
 
mov       rcx,rax
mov       rdx,rbx
call      qword ptr [7FFF540E4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rcx,[rbp+28]
mov       rdx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rcx,[rbp+28]
mov       rax,[rcx]
test      rax,rax
je        near ptr M01_L11
mov       rdx,rax
mov       r8d,[rdx+38]
sub       r8d,[rdx+40]
je        near ptr M01_L09
mov       rcx,rax
cmp       [rcx],ecx
call      qword ptr [7FFF540EEC70]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Comparer()
mov       rcx,rax
mov       rax,[rcx]
mov       rdx,offset MT_System.Collections.Generic.GenericEqualityComparer`1[[System.String, System.Private.CoreLib]]
cmp       rax,rdx
jne       short M01_L08
cmp       qword ptr [rbp+20],0
je        near ptr M01_L11
mov       rcx,[rcx]
mov       rdx,[rbp+20]
cmp       rcx,[rdx]
je        short M01_L09
jmp       near ptr M01_L11
M01_L05
 
mov       rcx,[rsi+8]
mov       rdx,[rbp+20]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L03
xor       eax,eax
mov       rcx,[rbp+28]
mov       [rcx],rax
mov       rax,rsi
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L06
 
mov       rdx,7FFF54E56598
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdx,rax
jmp       near ptr M01_L00
M01_L07
 
mov       rdx,7FFF54E555C8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
mov       r8,rcx
jmp       near ptr M01_L02
M01_L08
 
mov       rdx,[rbp+20]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        short M01_L11
M01_L09
 
mov       rcx,[rbp+28]
mov       rax,[rcx]
mov       ecx,[rax+38]
sub       ecx,[rax+40]
je        near ptr M01_L20
xor       eax,eax
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L10
 
mov       rdx,7FFF54E55A78
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
jmp       near ptr M01_L04
M01_L11
 
mov       rax,[rbp+10]
mov       rdx,[rax+10]
mov       rdx,[rdx+20]
test      rdx,rdx
je        short M01_L12
jmp       short M01_L13
M01_L12
 
mov       rcx,rax
mov       rdx,7FFF54E55A78
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdx,rax
M01_L13
 
mov       rcx,rdx
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       r8,[rbp+20]
xor       edx,edx
call      qword ptr [7FFF540EEBC8]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, System.Collections.Generic.IEqualityComparer`1)
mov       rcx,[rbp+28]
mov       rdx,rsi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       r11,[rcx+28]
test      r11,r11
je        short M01_L14
jmp       short M01_L15
M01_L14
 
mov       rcx,rax
mov       rdx,7FFF54E55B60
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L15
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-30],rax
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L17
jmp       short M01_L18
M01_L17
 
mov       rcx,rax
mov       rdx,7FFF54E55B80
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L18
 
lea       rdx,[rbp-28]
mov       rcx,[rbp-30]
call      qword ptr [r11]
mov       rcx,[rbp+28]
mov       rdx,[rcx]
mov       r8,[rbp-28]
mov       r9,[rbp-20]
cmp       [rdx],dl
mov       rcx,rdx
mov       rdx,r8
mov       r8,r9
mov       r9d,1
call      qword ptr [7FFF540EEE98]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].TryInsert(System.__Canon, System.__Canon, System.Collections.Generic.InsertionBehavior)
M01_L19
 
mov       rcx,[rbp-30]
mov       r11,7FFF53FA1C10
call      qword ptr [r11]
test      eax,eax
jne       short M01_L16
mov       rcx,rsp
call      M01_L29
jmp       near ptr M01_L09
M01_L20
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L21
jmp       short M01_L22
M01_L21
 
mov       rcx,rax
mov       rdx,7FFF54E555C8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L22
 
call      qword ptr [7FFF54DAE688]
mov       rcx,[rax+8]
cmp       rcx,[rbp+20]
je        short M01_L25
mov       rax,[rbp+10]
mov       rcx,[rax+10]
cmp       qword ptr [rcx+10],40
jle       short M01_L23
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rax
mov       rdx,7FFF54E56428
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L24
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
lea       rcx,[rbx+8]
mov       rdx,[rbp+20]
call      CORINFO_HELP_ASSIGN_REF
mov       rax,rbx
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L25
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L26
jmp       short M01_L27
M01_L26
 
mov       rcx,rax
mov       rdx,7FFF54E555C8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L27
 
call      qword ptr [7FFF54DAE688]
nop
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L28
 
mov       ecx,6A7
mov       rdx,7FFF54DC5748
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF54DAEEF8]
int       3
M01_L29
 
push      rbp
push      rsi
push      rbx
sub       rsp,30
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+60]
cmp       qword ptr [rbp-30],0
je        short M01_L30
mov       rcx,[rbp-30]
mov       r11,7FFF53FA1C18
call      qword ptr [r11]
M01_L30
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rbp
ret
 
System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.Dictionary`2)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,0D8
lea       rbp,[rsp+110]
xor       eax,eax
mov       [rbp-0A0],rax
mov       [rbp-40],rcx
mov       rbx,rcx
mov       rsi,rdx
mov       rcx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFF540EEC70]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Comparer()
mov       rdi,rax
mov       rcx,[rbx+10]
mov       rdx,offset MT_System.String
cmp       [rcx],rdx
jne       near ptr M02_L28
mov       rcx,[rbx+10]
mov       rcx,[rcx+28]
test      rcx,rcx
je        short M02_L00
jmp       short M02_L01
M02_L00
 
mov       rcx,rbx
mov       rdx,7FFF54E58688
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L01
 
call      qword ptr [7FFF540EFC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
cmp       rax,rdi
jne       near ptr M02_L34
M02_L02
 
mov       rdx,rdi
mov       rcx,offset MT_System.Collections.Generic.IEqualityComparer`1[[System.String, System.Private.CoreLib]]
call      qword ptr [7FFF540E4390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       r14,rax
mov       rcx,[rbx+10]
mov       rdi,[rcx+30]
test      rdi,rdi
je        short M02_L03
jmp       short M02_L04
M02_L03
 
mov       rcx,rbx
mov       rdx,7FFF54E586C8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdi,rax
M02_L04
 
mov       rcx,rsi
call      qword ptr [7FFF540EECA0]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Keys()
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FFF5458EAC0]; System.Linq.Enumerable.ToArray[[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1)
mov       rdi,rax
test      rdi,rdi
je        short M02_L05
mov       rcx,offset MT_System.String[]
cmp       [rdi],rcx
je        short M02_L05
mov       rdx,rax
call      qword ptr [7FFF540E4390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       rdi,rax
M02_L05
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],38
jle       short M02_L06
mov       r15,[rcx+38]
test      r15,r15
je        short M02_L06
jmp       short M02_L07
M02_L06
 
mov       rcx,rbx
mov       rdx,7FFF54E58788
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r15,rax
M02_L07
 
mov       rcx,rsi
call      qword ptr [7FFF540EECE8]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Values()
mov       rdx,rax
mov       rcx,r15
call      qword ptr [7FFF5458EAC0]; System.Linq.Enumerable.ToArray[[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1)
mov       rsi,rax
mov       r15d,7FFFFFFF
xor       r13d,r13d
xor       r12d,r12d
xor       ecx,ecx
mov       eax,[rdi+8]
mov       [rbp-0A4],eax
test      eax,eax
jle       short M02_L13
M02_L08
 
mov       edx,ecx
mov       rdx,[rdi+rdx*8+10]
mov       edx,[rdx+8]
cmp       edx,r15d
jl        short M02_L15
M02_L09
 
cmp       edx,r13d
jg        short M02_L14
M02_L10
 
mov       r8d,1
shlx      rdx,r8,rdx
or        r12,rdx
inc       ecx
cmp       eax,ecx
jg        short M02_L12
M02_L11
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],40
jle       near ptr M02_L19
mov       rcx,[rcx+40]
test      rcx,rcx
je        near ptr M02_L19
jmp       near ptr M02_L20
M02_L12
 
mov       eax,[rbp-0A4]
jmp       short M02_L08
M02_L13
 
jmp       short M02_L11
M02_L14
 
mov       r13d,edx
jmp       short M02_L10
M02_L15
 
mov       r15d,edx
jmp       short M02_L09
M02_L16
 
mov       r10d,[rbp-5C]
xor       eax,eax
M02_L17
 
movzx     eax,al
mov       [rbp-60],eax
test      r15d,r15d
je        near ptr M02_L40
mov       [rbp-0A0],rdx
mov       [rbp-98],r8d
mov       [rsp+20],r13d
lea       rcx,[rbp-80]
mov       [rsp+28],rcx
lea       rcx,[rbp-0A0]
mov       edx,eax
mov       r8d,r10d
mov       r9d,r15d
call      qword ptr [7FFF54E67528]; System.Collections.Frozen.KeyAnalyzer.TryUseSubstring(System.ReadOnlySpan`1, Boolean, Boolean, Int32, Int32, AnalysisResults ByRef)
test      eax,eax
mov       eax,[rbp-60]
mov       rdx,[rbp-0C0]
mov       r8d,[rbp-84]
mov       r10d,[rbp-5C]
je        near ptr M02_L40
M02_L18
 
movzx     eax,byte ptr [rbp-80]
mov       r13d,[rbp-7C]
mov       r15d,[rbp-78]
mov       r8d,[rbp-74]
mov       [rbp-8C],r8d
mov       r10d,[rbp-70]
mov       [rbp-90],r10d
movzx     ecx,byte ptr [rbp-7F]
mov       [rbp-57],cl
test      r15d,r15d
je        near ptr M02_L66
test      r13d,r13d
jl        near ptr M02_L42
test      eax,eax
jne       near ptr M02_L56
cmp       r15d,1
je        near ptr M02_L63
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],70
jle       near ptr M02_L21
mov       rcx,[rcx+70]
test      rcx,rcx
je        near ptr M02_L21
jmp       near ptr M02_L22
M02_L19
 
mov       rcx,rbx
mov       rdx,7FFF54E59498
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L20
 
mov       [rsp+20],r15d
mov       [rsp+28],r13d
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54E66C88]; System.Collections.Frozen.LengthBucketsFrozenDictionary`1[[System.__Canon, System.Private.CoreLib]].CreateLengthBucketsFrozenDictionaryIfAppropriate(System.String[], System.__Canon[], System.Collections.Generic.IEqualityComparer`1, Int32, Int32)
test      rax,rax
jne       near ptr M02_L35
lea       rdx,[rdi+10]
mov       r8d,[rbp-0A4]
mov       [rbp-0C0],rdx
mov       [rbp-84],r8d
mov       rcx,26F37C002E0
xor       r10d,r10d
cmp       r14,[rcx]
sete      r10b
mov       [rbp-5C],r10d
test      r10d,r10d
je        near ptr M02_L16
mov       [rbp-0A0],rdx
mov       [rbp-98],r8d
lea       rcx,[rbp-0A0]
call      qword ptr [7FFF54E67558]
mov       rdx,[rbp-0C0]
mov       r8d,[rbp-84]
mov       r10d,[rbp-5C]
jmp       near ptr M02_L17
M02_L21
 
mov       rcx,rbx
mov       rdx,7FFF54E5CA48
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L22
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54E6CBE8]; System.Collections.Frozen.OrdinalStringFrozenDictionary`1[[System.__Canon, System.Private.CoreLib]]..ctor(System.String[], System.__Canon[], System.Collections.Generic.IEqualityComparer`1, Int32, Int32, Int32, Int32)
mov       rax,r12
M02_L23
 
mov       r12,rax
M02_L24
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],50
jle       short M02_L25
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M02_L25
jmp       short M02_L26
M02_L25
 
mov       rcx,rbx
mov       rdx,7FFF54E5A568
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L26
 
mov       rax,r12
test      rax,rax
je        short M02_L27
cmp       [rax],rcx
je        short M02_L27
mov       rdx,r12
call      qword ptr [7FFF540E43F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
M02_L27
 
nop
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L28
 
mov       ecx,[rsi+38]
sub       ecx,[rsi+40]
cmp       ecx,4
jg        short M02_L31
mov       rcx,[rbx+10]
mov       rcx,[rcx+20]
test      rcx,rcx
je        short M02_L29
jmp       short M02_L30
M02_L29
 
mov       rcx,rbx
mov       rdx,7FFF54E58518
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L30
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,rsi
call      qword ptr [7FFF54E66220]
mov       rax,rbx
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L31
 
mov       rcx,[rbx+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M02_L32
jmp       short M02_L33
M02_L32
 
mov       rcx,rbx
mov       rdx,7FFF54E57DD8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L33
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,rsi
xor       r8d,r8d
call      qword ptr [7FFF54E65650]
mov       rax,rbx
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L34
 
mov       rcx,26F37C002D8
cmp       rdi,[rcx]
je        near ptr M02_L02
mov       rcx,26F37C002E0
cmp       rdi,[rcx]
jne       near ptr M02_L28
jmp       near ptr M02_L02
M02_L35
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],50
jle       short M02_L37
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M02_L36
jmp       short M02_L39
M02_L36
 
mov       [rbp-0B0],rax
jmp       short M02_L38
M02_L37
 
mov       [rbp-0B0],rax
M02_L38
 
mov       rcx,rbx
mov       rdx,7FFF54E5A568
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
mov       rax,[rbp-0B0]
M02_L39
 
mov       rdx,rax
call      qword ptr [7FFF540E43D8]; System.Runtime.CompilerServices.CastHelpers.ChkCastClass(Void*, System.Object)
nop
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L40
 
mov       rcx,26F37C14720
mov       r9,[rcx]
mov       [rbp-0C8],rdx
mov       [rbp-88],r8d
mov       [rbp-64],eax
mov       [rbp-68],r10d
test      r9,r9
jne       short M02_L41
mov       rcx,offset MT_System.Collections.Frozen.KeyAnalyzer+GetSpan
call      CORINFO_HELP_NEWSFAST
mov       r9,rax
mov       [rbp-0B8],r9
mov       rdx,26F37C14718
mov       rdx,[rdx]
mov       rcx,r9
mov       r8,offset System.Collections.Frozen.KeyAnalyzer+<>c.b__0_0(System.String, Int32, Int32)
call      qword ptr [7FFF540E4210]; System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
mov       rcx,26F37C14720
mov       rdx,[rbp-0B8]
call      CORINFO_HELP_ASSIGN_REF
mov       r9,[rbp-0B8]
M02_L41
 
mov       rdx,[rbp-0C8]
mov       [rbp-0A0],rdx
mov       r8d,[rbp-88]
mov       [rbp-98],r8d
mov       [rsp+20],r15d
mov       [rsp+28],r13d
xor       edx,edx
mov       [rsp+30],edx
mov       [rsp+38],edx
mov       [rsp+40],r9
lea       rdx,[rbp-0A0]
movzx     r8d,byte ptr [rbp-64]
movzx     r9d,byte ptr [rbp-68]
lea       rcx,[rbp-80]
call      qword ptr [7FFF54E67540]; System.Collections.Frozen.KeyAnalyzer.CreateAnalysisResults(System.ReadOnlySpan`1, Boolean, Boolean, Int32, Int32, Int32, Int32, GetSpan)
jmp       near ptr M02_L18
M02_L42
 
test      eax,eax
je        near ptr M02_L49
cmp       byte ptr [rbp-57],0
jne       short M02_L45
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],0A0
jle       short M02_L43
mov       rcx,[rcx+0A0]
test      rcx,rcx
je        short M02_L43
jmp       short M02_L44
M02_L43
 
mov       rcx,rbx
mov       rdx,7FFF54E5FF80
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L44
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54E97900]
jmp       short M02_L48
M02_L45
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],98
jle       short M02_L46
mov       rcx,[rcx+98]
test      rcx,rcx
je        short M02_L46
jmp       short M02_L47
M02_L46
 
mov       rcx,rbx
mov       rdx,7FFF54E5F6F8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L47
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54E96E80]
M02_L48
 
jmp       near ptr M02_L24
M02_L49
 
cmp       r15d,1
je        short M02_L52
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],90
jle       short M02_L50
mov       rcx,[rcx+90]
test      rcx,rcx
je        short M02_L50
jmp       short M02_L51
M02_L50
 
mov       rcx,rbx
mov       rdx,7FFF54E5EC68
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L51
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54E96400]
jmp       short M02_L55
M02_L52
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],88
jle       short M02_L53
mov       rcx,[rcx+88]
test      rcx,rcx
je        short M02_L53
jmp       short M02_L54
M02_L53
 
mov       rcx,rbx
mov       rdx,7FFF54E5E3E0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L54
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       r15d,[rbp-8C]
mov       [rsp+20],r15d
mov       r15d,[rbp-90]
mov       [rsp+28],r15d
mov       [rsp+30],r13d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54E95980]
M02_L55
 
jmp       near ptr M02_L24
M02_L56
 
cmp       byte ptr [rbp-57],0
jne       short M02_L59
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],80
jle       short M02_L57
mov       rcx,[rcx+80]
test      rcx,rcx
je        short M02_L57
jmp       short M02_L58
M02_L57
 
mov       rcx,rbx
mov       rdx,7FFF54E5DB58
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L58
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54E94F00]
jmp       short M02_L62
M02_L59
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],78
jle       short M02_L60
mov       rcx,[rcx+78]
test      rcx,rcx
je        short M02_L60
jmp       short M02_L61
M02_L60
 
mov       rcx,rbx
mov       rdx,7FFF54E5D2D0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L61
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54E94480]
M02_L62
 
jmp       near ptr M02_L24
M02_L63
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],68
jle       short M02_L64
mov       rcx,[rcx+68]
test      rcx,rcx
je        short M02_L64
jmp       short M02_L65
M02_L64
 
mov       rcx,rbx
mov       rdx,7FFF54E5C1C0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L65
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       r15d,[rbp-8C]
mov       [rsp+20],r15d
mov       r15d,[rbp-90]
mov       [rsp+28],r15d
mov       [rsp+30],r13d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54E6EE98]
mov       rax,r12
jmp       near ptr M02_L23
M02_L66
 
test      eax,eax
je        near ptr M02_L73
cmp       byte ptr [rbp-57],0
jne       short M02_L69
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],60
jle       short M02_L67
mov       rcx,[rcx+60]
test      rcx,rcx
je        short M02_L67
jmp       short M02_L68
M02_L67
 
mov       rcx,rbx
mov       rdx,7FFF54E5B7A8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L68
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-8C]
mov       [rsp+20],r13d
mov       r13d,[rbp-90]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54E6E3E8]
jmp       short M02_L72
M02_L69
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],58
jle       short M02_L70
mov       rcx,[rcx+58]
test      rcx,rcx
je        short M02_L70
jmp       short M02_L71
M02_L70
 
mov       rcx,rbx
mov       rdx,7FFF54E5AF10
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L71
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-8C]
mov       [rsp+20],r13d
mov       r13d,[rbp-90]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54E6D920]
M02_L72
 
mov       r12,r15
jmp       near ptr M02_L24
M02_L73
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],48
jle       short M02_L74
mov       rcx,[rcx+48]
test      rcx,rcx
je        short M02_L74
jmp       short M02_L75
M02_L74
 
mov       rcx,rbx
mov       rdx,7FFF54E5A558
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L75
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-8C]
mov       [rsp+20],r13d
mov       r13d,[rbp-90]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFF54E6CD20]
mov       r12,r15
jmp       near ptr M02_L24
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToImmutableDictionary()
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,50
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
mov       rbx,rcx
mov       r8,[rbx+280]
test      r8,r8
je        near ptr M00_L02
mov       r9,28B1E414740
mov       rsi,[r9]
cmp       dword ptr [rsi+18],0
jne       short M00_L00
mov       rcx,r8
mov       r9,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rcx],r9
je        near ptr M00_L04
mov       rcx,r8
mov       r9,offset MT_System.Collections.Immutable.ImmutableDictionary`2+Builder[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rcx],r9
je        near ptr M00_L03
M00_L00
 
mov       r9,[rsi+8]
mov       rcx,[rsi+10]
mov       [rsp+28],r9
mov       [rsp+30],rcx
mov       dword ptr [rsp+20],2
lea       r9,[rsp+28]
lea       rcx,[rsp+40]
mov       rdx,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      qword ptr [7FFF54BC6C88]; System.Collections.Immutable.ImmutableDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, MutationInput, KeyCollisionBehavior)
mov       rdi,[rsp+40]
mov       ebp,[rsi+18]
add       ebp,[rsp+48]
test      rdi,rdi
je        near ptr M00_L05
cmp       [rsi+8],rdi
je        near ptr M00_L07
cmp       qword ptr [rdi+8],0
je        near ptr M00_L05
mov       rcx,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rdx,[rsi+10]
test      rdx,rdx
je        near ptr M00_L06
lea       rcx,[r14+10]
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,28B1E401FE8
mov       rdx,[rcx]
lea       rcx,[r14+8]
call      CORINFO_HELP_ASSIGN_REF
mov       rdx,28B1E414748
mov       rdx,[rdx]
mov       rcx,rdi
call      qword ptr [7FFF54BCCCA8]; System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].Freeze(System.Action`1>>)
lea       rcx,[r14+8]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       [r14+18],ebp
M00_L01
 
mov       [rsp+38],r14
mov       rsi,[rbx+18]
mov       rdx,[rsp+38]
lea       rcx,[rsi+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rsi+8],rax
add       rsp,50
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
ret
M00_L02
 
call      qword ptr [7FFF546944C8]
mov       ecx,43
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       r14,rax
mov       ecx,1436
mov       rdx,7FFF54496D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,r14
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546942B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542F6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L03
 
cmp       [rcx],ecx
call      qword ptr [7FFF54BCE298]
mov       rcx,rax
M00_L04
 
mov       r8,[rsi+10]
mov       r8,[r8+10]
mov       rdx,[rsi+10]
mov       rdx,[rdx+8]
cmp       [rcx],ecx
call      qword ptr [7FFF54BC68C8]
mov       r14,rax
jmp       near ptr M00_L01
M00_L05
 
mov       rcx,rsi
call      qword ptr [7FFF54BC6658]
mov       r14,rax
jmp       near ptr M00_L01
M00_L06
 
mov       ecx,6DB
mov       rdx,7FFF54BD35C8
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF54BCD3E0]
int       3
M00_L07
 
mov       r14,rsi
jmp       near ptr M00_L01
 
System.Collections.Immutable.ImmutableDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, MutationInput, KeyCollisionBehavior)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,128
vzeroupper
lea       rbp,[rsp+160]
vxorps    xmm4,xmm4,xmm4
mov       rax,0FFFFFFFFFFFFFF70
M01_L00
 
vmovdqa   xmmword ptr [rbp+rax-40],xmm4
vmovdqa   xmmword ptr [rbp+rax-30],xmm4
vmovdqa   xmmword ptr [rbp+rax-20],xmm4
add       rax,30
jne       short M01_L00
mov       [rbp-118],rsp
mov       [rbp-40],rdx
mov       rdi,rcx
mov       rbx,rdx
mov       r14,r8
mov       esi,[rbp+30]
mov       r15,[r9]
mov       r13,[r9+8]
test      r14,r14
je        near ptr M01_L29
xor       r12d,r12d
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+68]
test      r11,r11
je        near ptr M01_L24
M01_L01
 
mov       rcx,r14
call      qword ptr [r11]
mov       [rbp-0E8],rax
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r14,[rcx+88]
test      r14,r14
je        short M01_L03
M01_L02
 
jmp       near ptr M01_L11
M01_L03
 
mov       rcx,rbx
mov       rdx,7FFF54BE9100
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r14,rax
jmp       short M01_L02
M01_L04
 
mov       rcx,rbx
mov       rdx,7FFF54BE8F58
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L06
M01_L05
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+70]
test      r11,r11
je        short M01_L04
M01_L06
 
lea       rdx,[rbp-50]
mov       rcx,[rbp-0E8]
call      qword ptr [r11]
mov       rcx,[rbp-50]
test      rcx,rcx
je        near ptr M01_L15
mov       rcx,[r13+8]
mov       r11,r14
mov       rdx,[rbp-50]
call      qword ptr [r11]
mov       [rbp-54],eax
cmp       [r15],r15b
mov       r8,r15
M01_L07
 
cmp       qword ptr [r8+8],0
je        near ptr M01_L20
mov       ecx,[r8+18]
cmp       eax,ecx
je        near ptr M01_L14
jle       short M01_L08
mov       r8,[r8+10]
mov       eax,[rbp-54]
jmp       short M01_L07
M01_L08
 
mov       r8,[r8+8]
mov       eax,[rbp-54]
jmp       short M01_L07
M01_L09
 
lea       r8,[rbp-0D8]
mov       [rsp+20],r8
lea       r8,[rbp-0E0]
mov       [rsp+28],r8
lea       r8,[rbp-0D0]
mov       rcx,r15
mov       edx,[rbp-54]
mov       r9,r13
call      qword ptr [7FFF54BCCC48]; System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].SetItem(Int32, HashBucket, System.Collections.Generic.IEqualityComparer`1>, Boolean ByRef, Boolean ByRef)
mov       r15,rax
M01_L10
 
cmp       dword ptr [rbp-78],1
jne       short M01_L11
mov       rax,[rbp-0E8]
inc       r12d
M01_L11
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-0E8]
cmp       [rax],rcx
jne       near ptr M01_L18
lea       r8,[rax+8]
mov       [rbp-100],r8
mov       ecx,[r8+8]
mov       rdx,[r8]
cmp       ecx,[rdx+44]
jne       near ptr M01_L17
M01_L12
 
mov       ecx,[r8+0C]
mov       r10,[r8]
cmp       ecx,[r10+38]
jae       near ptr M01_L19
mov       rdx,[r10+10]
lea       r10d,[rcx+1]
mov       [r8+0C],r10d
cmp       ecx,[rdx+8]
jae       short M01_L13
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L12
mov       rdx,[rcx]
mov       r10,[rcx+8]
mov       [rbp-108],r10
lea       rcx,[r8+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-100]
lea       rcx,[rax+20]
mov       rdx,[rbp-108]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L05
M01_L13
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L14
 
vmovdqu   xmm0,xmmword ptr [r8+20]
vmovdqu   xmmword ptr [rbp-0B8],xmm0
mov       rcx,[r8+30]
mov       [rbp-0A8],rcx
jmp       near ptr M01_L21
M01_L15
 
mov       ecx,717
mov       rdx,7FFF54BD35C8
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF54BCD3E0]
int       3
M01_L16
 
mov       eax,[rbp-54]
lea       r8,[rbp-0D8]
mov       rcx,r15
mov       edx,eax
call      qword ptr [7FFF54BCCD98]
mov       r15,rax
jmp       near ptr M01_L10
M01_L17
 
call      qword ptr [7FFF54475E00]
int       3
M01_L18
 
mov       rcx,rax
mov       r11,7FFF53FC0FB0
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L05
mov       rax,[rbp-0E8]
jmp       near ptr M01_L25
M01_L19
 
mov       rax,[rbp-0E8]
mov       ecx,[r10+38]
inc       ecx
mov       [r8+0C],ecx
xor       ecx,ecx
mov       [r8+18],rcx
mov       [r8+20],rcx
jmp       near ptr M01_L25
M01_L20
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-0B8],xmm0
vmovdqu   xmmword ptr [rbp-0B0],xmm0
M01_L21
 
vmovdqu   xmm0,xmmword ptr [rbp-0B8]
vmovdqu   xmmword ptr [rbp-70],xmm0
mov       rcx,[rbp-0A8]
mov       [rbp-60],rcx
mov       r8,[rbp-50]
mov       [rbp-0F0],r8
mov       r10,[rbp-48]
mov       [rbp-0F8],r10
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r9,[rcx+90]
test      r9,r9
je        short M01_L23
M01_L22
 
mov       r10,[rbp-0F8]
mov       [rsp+20],r10
mov       [rsp+28],r13
mov       rcx,[r13+10]
mov       [rsp+30],rcx
mov       [rsp+38],esi
lea       rcx,[rbp-78]
mov       [rsp+40],rcx
mov       r8,r9
lea       rcx,[rbp-70]
lea       rdx,[rbp-90]
mov       r9,[rbp-0F0]
call      qword ptr [7FFF54BC7F78]; System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].Add(System.__Canon, System.__Canon, System.Collections.Generic.IEqualityComparer`1>, System.Collections.Generic.IEqualityComparer`1, KeyCollisionBehavior, OperationResult ByRef)
vmovdqu   xmm0,xmmword ptr [rbp-90]
vmovdqu   xmmword ptr [rbp-0D0],xmm0
mov       rcx,[rbp-80]
mov       [rbp-0C0],rcx
cmp       qword ptr [rbp-0D0],0
je        near ptr M01_L16
jmp       near ptr M01_L09
M01_L23
 
mov       rcx,rbx
mov       rdx,7FFF54BE9118
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r8,rax
mov       r9,r8
jmp       near ptr M01_L22
M01_L24
 
mov       rcx,rbx
mov       rdx,7FFF54BE8F38
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L01
M01_L25
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       near ptr M01_L30
M01_L26
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-0A0],xmm0
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rdx,[rcx+50]
test      rdx,rdx
je        short M01_L28
M01_L27
 
lea       rcx,[rbp-0A0]
mov       r8,r15
mov       r9d,r12d
call      qword ptr [7FFF54BCD7B8]; System.Collections.Immutable.ImmutableDictionary`2+MutationResult[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Immutable.SortedInt32KeyNode`1>, Int32)
mov       rdx,[rbp-0A0]
mov       rcx,rdi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       eax,[rbp-98]
mov       [rdi+8],eax
mov       rax,rdi
add       rsp,128
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L28
 
mov       rcx,rbx
mov       rdx,7FFF54BE7A20
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rdx,rax
jmp       short M01_L27
M01_L29
 
mov       ecx,40B
mov       rdx,7FFF54BD35C8
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF54BCD3E0]
int       3
M01_L30
 
mov       rcx,rax
mov       r11,7FFF53FC0FB8
call      qword ptr [r11]
jmp       near ptr M01_L26
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
mov       rbp,[rcx+48]
mov       [rsp+48],rbp
lea       rbp,[rbp+160]
cmp       qword ptr [rbp-0E8],0
je        short M01_L31
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-0E8]
cmp       [rax],rcx
je        short M01_L31
mov       rcx,rax
mov       r11,7FFF53FC0FB8
call      qword ptr [r11]
M01_L31
 
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].Freeze(System.Action`1>>)
M02_L00
 
push      rsi
push      rbx
sub       rsp,58
vzeroupper
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+20],xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
xor       eax,eax
mov       [rsp+50],rax
mov       rbx,rcx
mov       rsi,rdx
cmp       byte ptr [rbx+1C],0
je        short M02_L02
M02_L01
 
add       rsp,58
pop       rbx
pop       rsi
ret
M02_L02
 
test      rsi,rsi
je        short M02_L03
mov       ecx,[rbx+18]
vmovdqu   xmm0,xmmword ptr [rbx+20]
vmovdqu   xmmword ptr [rsp+20],xmm0
mov       rdx,[rbx+30]
mov       [rsp+30],rdx
mov       [rsp+38],ecx
vmovdqu   xmm0,xmmword ptr [rsp+20]
vmovdqu   xmmword ptr [rsp+40],xmm0
mov       rcx,[rsp+30]
mov       [rsp+50],rcx
mov       rcx,offset System.Collections.Immutable.ImmutableDictionary`2+<>c[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].<.cctor>b__107_0(System.Collections.Generic.KeyValuePair`2>)
cmp       [rsi+18],rcx
jne       short M02_L04
mov       rcx,[rsi+8]
lea       rdx,[rsp+38]
call      qword ptr [7FFF54BC7BA0]; System.Collections.Immutable.ImmutableDictionary`2+<>c[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].<.cctor>b__107_0(System.Collections.Generic.KeyValuePair`2>)
M02_L03
 
mov       rcx,[rbx+8]
mov       rdx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFF54BCCCA8]
mov       rcx,[rbx+10]
mov       rdx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFF54BCCCA8]
mov       byte ptr [rbx+1C],1
jmp       short M02_L01
M02_L04
 
lea       rdx,[rsp+38]
mov       rcx,[rsi+8]
call      qword ptr [rsi+18]
jmp       short M02_L03
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M03_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M03_L02
test      rbx,rbx
je        short M03_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M03_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M03_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF541B5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF541B5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L01
 
call      qword ptr [7FFF54475D58]
int       3
M03_L02
 
test      rbx,rbx
je        short M03_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M03_L04
M03_L03
 
mov       rax,2CBB0360008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToImmutableDictionary()
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,50
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
mov       rbx,rcx
mov       r8,[rbx+280]
test      r8,r8
je        near ptr M00_L02
mov       r9,131F2414740
mov       rsi,[r9]
cmp       dword ptr [rsi+18],0
jne       short M00_L00
mov       rcx,r8
mov       r9,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rcx],r9
je        near ptr M00_L04
mov       rcx,r8
mov       r9,offset MT_System.Collections.Immutable.ImmutableDictionary`2+Builder[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rcx],r9
je        near ptr M00_L03
M00_L00
 
mov       r9,[rsi+8]
mov       rcx,[rsi+10]
mov       [rsp+28],r9
mov       [rsp+30],rcx
mov       dword ptr [rsp+20],2
lea       r9,[rsp+28]
lea       rcx,[rsp+40]
mov       rdx,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      qword ptr [7FFF54B9CE88]; System.Collections.Immutable.ImmutableDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, MutationInput, KeyCollisionBehavior)
mov       rdi,[rsp+40]
mov       ebp,[rsi+18]
add       ebp,[rsp+48]
test      rdi,rdi
je        near ptr M00_L05
cmp       [rsi+8],rdi
je        near ptr M00_L07
cmp       qword ptr [rdi+8],0
je        near ptr M00_L05
mov       rcx,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rdx,[rsi+10]
test      rdx,rdx
je        near ptr M00_L06
lea       rcx,[r14+10]
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,131F2401FE8
mov       rdx,[rcx]
lea       rcx,[r14+8]
call      CORINFO_HELP_ASSIGN_REF
mov       rdx,131F2414748
mov       rdx,[rdx]
mov       rcx,rdi
call      qword ptr [7FFF54B9EE98]; System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].Freeze(System.Action`1>>)
lea       rcx,[r14+8]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       [r14+18],ebp
M00_L01
 
mov       [rsp+38],r14
mov       rsi,[rbx+18]
mov       rdx,[rsp+38]
lea       rcx,[rsi+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rsi+8],rax
add       rsp,50
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
ret
M00_L02
 
call      qword ptr [7FFF546644C8]
mov       ecx,43
mov       rdx,7FFF545DA408
call      CORINFO_HELP_STRCNS
mov       r14,rax
mov       ecx,1436
mov       rdx,7FFF54466D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,r14
call      qword ptr [7FFF540D6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545DA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540D6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546642B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542C6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L03
 
cmp       [rcx],ecx
call      qword ptr [7FFF54BD4888]
mov       rcx,rax
M00_L04
 
mov       r8,[rsi+10]
mov       r8,[r8+10]
mov       rdx,[rsi+10]
mov       rdx,[rdx+8]
cmp       [rcx],ecx
call      qword ptr [7FFF54B9CAC8]
mov       r14,rax
jmp       near ptr M00_L01
M00_L05
 
mov       rcx,rsi
call      qword ptr [7FFF54B9C858]
mov       r14,rax
jmp       near ptr M00_L01
M00_L06
 
mov       ecx,6DB
mov       rdx,7FFF54BA72A0
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF54B9F5D0]
int       3
M00_L07
 
mov       r14,rsi
jmp       near ptr M00_L01
 
System.Collections.Immutable.ImmutableDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, MutationInput, KeyCollisionBehavior)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,128
vzeroupper
lea       rbp,[rsp+160]
vxorps    xmm4,xmm4,xmm4
mov       rax,0FFFFFFFFFFFFFF70
M01_L00
 
vmovdqa   xmmword ptr [rbp+rax-40],xmm4
vmovdqa   xmmword ptr [rbp+rax-30],xmm4
vmovdqa   xmmword ptr [rbp+rax-20],xmm4
add       rax,30
jne       short M01_L00
mov       [rbp-118],rsp
mov       [rbp-40],rdx
mov       rdi,rcx
mov       rbx,rdx
mov       r14,r8
mov       esi,[rbp+30]
mov       r15,[r9]
mov       r13,[r9+8]
test      r14,r14
je        near ptr M01_L29
xor       r12d,r12d
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+68]
test      r11,r11
je        near ptr M01_L24
M01_L01
 
mov       rcx,r14
call      qword ptr [r11]
mov       [rbp-0E8],rax
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r14,[rcx+88]
test      r14,r14
je        short M01_L03
M01_L02
 
jmp       near ptr M01_L11
M01_L03
 
mov       rcx,rbx
mov       rdx,7FFF54BBB418
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r14,rax
jmp       short M01_L02
M01_L04
 
mov       rcx,rbx
mov       rdx,7FFF54BBB270
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L06
M01_L05
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+70]
test      r11,r11
je        short M01_L04
M01_L06
 
lea       rdx,[rbp-50]
mov       rcx,[rbp-0E8]
call      qword ptr [r11]
mov       rcx,[rbp-50]
test      rcx,rcx
je        near ptr M01_L15
mov       rcx,[r13+8]
mov       r11,r14
mov       rdx,[rbp-50]
call      qword ptr [r11]
mov       [rbp-54],eax
cmp       [r15],r15b
mov       r8,r15
M01_L07
 
mov       rcx,[r8+8]
test      rcx,rcx
je        near ptr M01_L20
mov       edx,[r8+18]
cmp       eax,edx
je        near ptr M01_L14
jle       short M01_L08
mov       r8,[r8+10]
mov       eax,[rbp-54]
jmp       short M01_L07
M01_L08
 
mov       r8,rcx
mov       eax,[rbp-54]
jmp       short M01_L07
M01_L09
 
lea       r8,[rbp-0D8]
mov       [rsp+20],r8
lea       r8,[rbp-0E0]
mov       [rsp+28],r8
lea       r8,[rbp-0D0]
mov       rcx,r15
mov       edx,[rbp-54]
mov       r9,r13
call      qword ptr [7FFF54B9EE38]; System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].SetItem(Int32, HashBucket, System.Collections.Generic.IEqualityComparer`1>, Boolean ByRef, Boolean ByRef)
mov       r15,rax
M01_L10
 
cmp       dword ptr [rbp-78],1
jne       short M01_L11
mov       rax,[rbp-0E8]
inc       r12d
M01_L11
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-0E8]
cmp       [rax],rcx
jne       near ptr M01_L18
lea       r8,[rax+8]
mov       [rbp-100],r8
mov       ecx,[r8+8]
mov       rdx,[r8]
cmp       ecx,[rdx+44]
jne       near ptr M01_L17
M01_L12
 
mov       ecx,[r8+0C]
mov       r10,[r8]
cmp       ecx,[r10+38]
jae       near ptr M01_L19
mov       rdx,[r10+10]
lea       r10d,[rcx+1]
mov       [r8+0C],r10d
cmp       ecx,[rdx+8]
jae       short M01_L13
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L12
mov       rdx,[rcx]
mov       r10,[rcx+8]
mov       [rbp-108],r10
lea       rcx,[r8+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-100]
lea       rcx,[rax+20]
mov       rdx,[rbp-108]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L05
M01_L13
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L14
 
vmovdqu   xmm0,xmmword ptr [r8+20]
vmovdqu   xmmword ptr [rbp-0B8],xmm0
mov       rcx,[r8+30]
mov       [rbp-0A8],rcx
jmp       near ptr M01_L21
M01_L15
 
mov       ecx,717
mov       rdx,7FFF54BA72A0
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF54B9F5D0]
int       3
M01_L16
 
mov       eax,[rbp-54]
lea       r8,[rbp-0D8]
mov       rcx,r15
mov       edx,eax
call      qword ptr [7FFF54B9EF88]
mov       r15,rax
jmp       near ptr M01_L10
M01_L17
 
call      qword ptr [7FFF54445E00]
int       3
M01_L18
 
mov       rcx,rax
mov       r11,7FFF53F90FB0
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L05
mov       rax,[rbp-0E8]
jmp       near ptr M01_L27
M01_L19
 
mov       rax,[rbp-0E8]
mov       ecx,[r10+38]
inc       ecx
mov       [r8+0C],ecx
xor       ecx,ecx
mov       [r8+18],rcx
mov       [r8+20],rcx
jmp       near ptr M01_L27
M01_L20
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-0B8],xmm0
vmovdqu   xmmword ptr [rbp-0B0],xmm0
M01_L21
 
vmovdqu   xmm0,xmmword ptr [rbp-0B8]
vmovdqu   xmmword ptr [rbp-70],xmm0
mov       rcx,[rbp-0A8]
mov       [rbp-60],rcx
mov       r8,[rbp-50]
mov       [rbp-0F0],r8
mov       r10,[rbp-48]
mov       [rbp-0F8],r10
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r9,[rcx+90]
test      r9,r9
je        short M01_L23
M01_L22
 
mov       r10,[rbp-0F8]
mov       [rsp+20],r10
mov       [rsp+28],r13
mov       rcx,[r13+10]
mov       [rsp+30],rcx
mov       [rsp+38],esi
lea       rcx,[rbp-78]
mov       [rsp+40],rcx
mov       r8,r9
lea       rcx,[rbp-70]
lea       rdx,[rbp-90]
mov       r9,[rbp-0F0]
call      qword ptr [7FFF54B9E178]; System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].Add(System.__Canon, System.__Canon, System.Collections.Generic.IEqualityComparer`1>, System.Collections.Generic.IEqualityComparer`1, KeyCollisionBehavior, OperationResult ByRef)
vmovdqu   xmm0,xmmword ptr [rbp-90]
vmovdqu   xmmword ptr [rbp-0D0],xmm0
mov       rcx,[rbp-80]
mov       [rbp-0C0],rcx
cmp       qword ptr [rbp-0D0],0
je        near ptr M01_L16
jmp       near ptr M01_L09
M01_L23
 
mov       rcx,rbx
mov       rdx,7FFF54BBB430
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r8,rax
mov       r9,r8
jmp       near ptr M01_L22
M01_L24
 
mov       rcx,rbx
mov       rdx,7FFF54BBB250
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L01
M01_L25
 
mov       rcx,rbx
mov       rdx,7FFF54BB9D38
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rdx,rax
M01_L26
 
lea       rcx,[rbp-0A0]
mov       r8,r15
mov       r9d,r12d
call      qword ptr [7FFF54B9F9A8]; System.Collections.Immutable.ImmutableDictionary`2+MutationResult[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Immutable.SortedInt32KeyNode`1>, Int32)
mov       rdx,[rbp-0A0]
mov       rcx,rdi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       eax,[rbp-98]
mov       [rdi+8],eax
mov       rax,rdi
add       rsp,128
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L27
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       short M01_L30
M01_L28
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-0A0],xmm0
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rdx,[rcx+50]
test      rdx,rdx
je        near ptr M01_L25
jmp       short M01_L26
M01_L29
 
mov       ecx,40B
mov       rdx,7FFF54BA72A0
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF54B9F5D0]
int       3
M01_L30
 
mov       rcx,rax
mov       r11,7FFF53F90FB8
call      qword ptr [r11]
jmp       short M01_L28
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
mov       rbp,[rcx+48]
mov       [rsp+48],rbp
lea       rbp,[rbp+160]
cmp       qword ptr [rbp-0E8],0
je        short M01_L31
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-0E8]
cmp       [rax],rcx
je        short M01_L31
mov       rcx,rax
mov       r11,7FFF53F90FB8
call      qword ptr [r11]
M01_L31
 
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].Freeze(System.Action`1>>)
M02_L00
 
push      rsi
push      rbx
sub       rsp,58
vzeroupper
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+20],xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
xor       eax,eax
mov       [rsp+50],rax
mov       rbx,rcx
mov       rsi,rdx
cmp       byte ptr [rbx+1C],0
jne       short M02_L02
test      rsi,rsi
je        short M02_L01
mov       ecx,[rbx+18]
vmovdqu   xmm0,xmmword ptr [rbx+20]
vmovdqu   xmmword ptr [rsp+20],xmm0
mov       rdx,[rbx+30]
mov       [rsp+30],rdx
mov       [rsp+38],ecx
vmovdqu   xmm0,xmmword ptr [rsp+20]
vmovdqu   xmmword ptr [rsp+40],xmm0
mov       rcx,[rsp+30]
mov       [rsp+50],rcx
mov       rcx,offset System.Collections.Immutable.ImmutableDictionary`2+<>c[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].<.cctor>b__107_0(System.Collections.Generic.KeyValuePair`2>)
cmp       [rsi+18],rcx
jne       short M02_L03
mov       rcx,[rsi+8]
lea       rdx,[rsp+38]
call      qword ptr [7FFF54B9DDA0]; System.Collections.Immutable.ImmutableDictionary`2+<>c[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].<.cctor>b__107_0(System.Collections.Generic.KeyValuePair`2>)
M02_L01
 
mov       rcx,[rbx+8]
mov       rdx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFF54B9EE98]
mov       rcx,[rbx+10]
mov       rdx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFF54B9EE98]
mov       byte ptr [rbx+1C],1
M02_L02
 
add       rsp,58
pop       rbx
pop       rsi
ret
M02_L03
 
lea       rdx,[rsp+38]
mov       rcx,[rsi+8]
call      qword ptr [rsi+18]
jmp       short M02_L01
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M03_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M03_L02
test      rbx,rbx
je        short M03_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M03_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M03_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF54185B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF54185B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L01
 
call      qword ptr [7FFF54445D58]
int       3
M03_L02
 
test      rbx,rbx
je        short M03_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M03_L04
M03_L03
 
mov       rax,1727C4B0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToImmutableDictionary()
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,50
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
mov       rbx,rcx
mov       r8,[rbx+280]
test      r8,r8
je        near ptr M00_L02
mov       r9,1F3A0C14740
mov       rsi,[r9]
cmp       dword ptr [rsi+18],0
jne       short M00_L00
mov       rcx,r8
mov       r9,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rcx],r9
je        near ptr M00_L04
mov       rcx,r8
mov       r9,offset MT_System.Collections.Immutable.ImmutableDictionary`2+Builder[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rcx],r9
je        near ptr M00_L03
M00_L00
 
mov       r9,[rsi+8]
mov       rcx,[rsi+10]
mov       [rsp+28],r9
mov       [rsp+30],rcx
mov       dword ptr [rsp+20],2
lea       r9,[rsp+28]
lea       rcx,[rsp+40]
mov       rdx,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      qword ptr [7FFF54B9CE88]; System.Collections.Immutable.ImmutableDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, MutationInput, KeyCollisionBehavior)
mov       rdi,[rsp+40]
mov       ebp,[rsi+18]
add       ebp,[rsp+48]
test      rdi,rdi
je        near ptr M00_L05
cmp       [rsi+8],rdi
je        near ptr M00_L07
cmp       qword ptr [rdi+8],0
je        near ptr M00_L05
mov       rcx,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rdx,[rsi+10]
test      rdx,rdx
je        near ptr M00_L06
lea       rcx,[r14+10]
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,1F3A0C01FE8
mov       rdx,[rcx]
lea       rcx,[r14+8]
call      CORINFO_HELP_ASSIGN_REF
mov       rdx,1F3A0C14748
mov       rdx,[rdx]
mov       rcx,rdi
call      qword ptr [7FFF54B9EE98]; System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].Freeze(System.Action`1>>)
lea       rcx,[r14+8]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       [r14+18],ebp
M00_L01
 
mov       [rsp+38],r14
mov       rsi,[rbx+18]
mov       rdx,[rsp+38]
lea       rcx,[rsi+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rsi+8],rax
add       rsp,50
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
ret
M00_L02
 
call      qword ptr [7FFF546644C8]
mov       ecx,43
mov       rdx,7FFF545DA408
call      CORINFO_HELP_STRCNS
mov       r14,rax
mov       ecx,1436
mov       rdx,7FFF54466D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,r14
call      qword ptr [7FFF540D6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545DA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540D6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546642B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542C6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L03
 
cmp       [rcx],ecx
call      qword ptr [7FFF54BD4888]
mov       rcx,rax
M00_L04
 
mov       r8,[rsi+10]
mov       r8,[r8+10]
mov       rdx,[rsi+10]
mov       rdx,[rdx+8]
cmp       [rcx],ecx
call      qword ptr [7FFF54B9CAC8]
mov       r14,rax
jmp       near ptr M00_L01
M00_L05
 
mov       rcx,rsi
call      qword ptr [7FFF54B9C858]
mov       r14,rax
jmp       near ptr M00_L01
M00_L06
 
mov       ecx,6DB
mov       rdx,7FFF54BA72A0
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF54B9F5D0]
int       3
M00_L07
 
mov       r14,rsi
jmp       near ptr M00_L01
 
System.Collections.Immutable.ImmutableDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, MutationInput, KeyCollisionBehavior)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,128
vzeroupper
lea       rbp,[rsp+160]
vxorps    xmm4,xmm4,xmm4
mov       rax,0FFFFFFFFFFFFFF70
M01_L00
 
vmovdqa   xmmword ptr [rbp+rax-40],xmm4
vmovdqa   xmmword ptr [rbp+rax-30],xmm4
vmovdqa   xmmword ptr [rbp+rax-20],xmm4
add       rax,30
jne       short M01_L00
mov       [rbp-118],rsp
mov       [rbp-40],rdx
mov       rdi,rcx
mov       rbx,rdx
mov       r14,r8
mov       esi,[rbp+30]
mov       r15,[r9]
mov       r13,[r9+8]
test      r14,r14
je        near ptr M01_L29
xor       r12d,r12d
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+68]
test      r11,r11
je        near ptr M01_L24
M01_L01
 
mov       rcx,r14
call      qword ptr [r11]
mov       [rbp-0E8],rax
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r14,[rcx+88]
test      r14,r14
je        short M01_L03
M01_L02
 
jmp       near ptr M01_L11
M01_L03
 
mov       rcx,rbx
mov       rdx,7FFF54BBB418
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r14,rax
jmp       short M01_L02
M01_L04
 
mov       rcx,rbx
mov       rdx,7FFF54BBB270
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L06
M01_L05
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+70]
test      r11,r11
je        short M01_L04
M01_L06
 
lea       rdx,[rbp-50]
mov       rcx,[rbp-0E8]
call      qword ptr [r11]
mov       rcx,[rbp-50]
test      rcx,rcx
je        near ptr M01_L15
mov       rcx,[r13+8]
mov       r11,r14
mov       rdx,[rbp-50]
call      qword ptr [r11]
mov       [rbp-54],eax
cmp       [r15],r15b
mov       r8,r15
M01_L07
 
mov       rcx,[r8+8]
test      rcx,rcx
je        near ptr M01_L20
mov       edx,[r8+18]
cmp       eax,edx
je        near ptr M01_L14
jle       short M01_L08
mov       r8,[r8+10]
mov       eax,[rbp-54]
jmp       short M01_L07
M01_L08
 
mov       r8,rcx
mov       eax,[rbp-54]
jmp       short M01_L07
M01_L09
 
lea       r8,[rbp-0D8]
mov       [rsp+20],r8
lea       r8,[rbp-0E0]
mov       [rsp+28],r8
lea       r8,[rbp-0D0]
mov       rcx,r15
mov       edx,[rbp-54]
mov       r9,r13
call      qword ptr [7FFF54B9EE38]; System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].SetItem(Int32, HashBucket, System.Collections.Generic.IEqualityComparer`1>, Boolean ByRef, Boolean ByRef)
mov       r15,rax
M01_L10
 
cmp       dword ptr [rbp-78],1
jne       short M01_L11
mov       rax,[rbp-0E8]
inc       r12d
M01_L11
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-0E8]
cmp       [rax],rcx
jne       near ptr M01_L18
lea       r8,[rax+8]
mov       [rbp-100],r8
mov       ecx,[r8+8]
mov       rdx,[r8]
cmp       ecx,[rdx+44]
jne       near ptr M01_L17
M01_L12
 
mov       ecx,[r8+0C]
mov       r10,[r8]
cmp       ecx,[r10+38]
jae       near ptr M01_L19
mov       rdx,[r10+10]
lea       r10d,[rcx+1]
mov       [r8+0C],r10d
cmp       ecx,[rdx+8]
jae       short M01_L13
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L12
mov       rdx,[rcx]
mov       r10,[rcx+8]
mov       [rbp-108],r10
lea       rcx,[r8+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-100]
lea       rcx,[rax+20]
mov       rdx,[rbp-108]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L05
M01_L13
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L14
 
vmovdqu   xmm0,xmmword ptr [r8+20]
vmovdqu   xmmword ptr [rbp-0B8],xmm0
mov       rcx,[r8+30]
mov       [rbp-0A8],rcx
jmp       near ptr M01_L21
M01_L15
 
mov       ecx,717
mov       rdx,7FFF54BA72A0
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF54B9F5D0]
int       3
M01_L16
 
mov       eax,[rbp-54]
lea       r8,[rbp-0D8]
mov       rcx,r15
mov       edx,eax
call      qword ptr [7FFF54B9EF88]
mov       r15,rax
jmp       near ptr M01_L10
M01_L17
 
call      qword ptr [7FFF54445E00]
int       3
M01_L18
 
mov       rcx,rax
mov       r11,7FFF53F90FB0
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L05
mov       rax,[rbp-0E8]
jmp       near ptr M01_L25
M01_L19
 
mov       rax,[rbp-0E8]
mov       ecx,[r10+38]
inc       ecx
mov       [r8+0C],ecx
xor       ecx,ecx
mov       [r8+18],rcx
mov       [r8+20],rcx
jmp       near ptr M01_L25
M01_L20
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-0B8],xmm0
vmovdqu   xmmword ptr [rbp-0B0],xmm0
M01_L21
 
vmovdqu   xmm0,xmmword ptr [rbp-0B8]
vmovdqu   xmmword ptr [rbp-70],xmm0
mov       rcx,[rbp-0A8]
mov       [rbp-60],rcx
mov       r8,[rbp-50]
mov       [rbp-0F0],r8
mov       r10,[rbp-48]
mov       [rbp-0F8],r10
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r9,[rcx+90]
test      r9,r9
je        short M01_L23
M01_L22
 
mov       r10,[rbp-0F8]
mov       [rsp+20],r10
mov       [rsp+28],r13
mov       rcx,[r13+10]
mov       [rsp+30],rcx
mov       [rsp+38],esi
lea       rcx,[rbp-78]
mov       [rsp+40],rcx
mov       r8,r9
lea       rcx,[rbp-70]
lea       rdx,[rbp-90]
mov       r9,[rbp-0F0]
call      qword ptr [7FFF54B9E178]; System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].Add(System.__Canon, System.__Canon, System.Collections.Generic.IEqualityComparer`1>, System.Collections.Generic.IEqualityComparer`1, KeyCollisionBehavior, OperationResult ByRef)
vmovdqu   xmm0,xmmword ptr [rbp-90]
vmovdqu   xmmword ptr [rbp-0D0],xmm0
mov       rcx,[rbp-80]
mov       [rbp-0C0],rcx
cmp       qword ptr [rbp-0D0],0
je        near ptr M01_L16
jmp       near ptr M01_L09
M01_L23
 
mov       rcx,rbx
mov       rdx,7FFF54BBB430
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r8,rax
mov       r9,r8
jmp       near ptr M01_L22
M01_L24
 
mov       rcx,rbx
mov       rdx,7FFF54BBB250
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L01
M01_L25
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       near ptr M01_L30
M01_L26
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-0A0],xmm0
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rdx,[rcx+50]
test      rdx,rdx
je        short M01_L28
M01_L27
 
lea       rcx,[rbp-0A0]
mov       r8,r15
mov       r9d,r12d
call      qword ptr [7FFF54B9F9A8]; System.Collections.Immutable.ImmutableDictionary`2+MutationResult[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Immutable.SortedInt32KeyNode`1>, Int32)
mov       rdx,[rbp-0A0]
mov       rcx,rdi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       eax,[rbp-98]
mov       [rdi+8],eax
mov       rax,rdi
add       rsp,128
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L28
 
mov       rcx,rbx
mov       rdx,7FFF54BB9D38
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rdx,rax
jmp       short M01_L27
M01_L29
 
mov       ecx,40B
mov       rdx,7FFF54BA72A0
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF54B9F5D0]
int       3
M01_L30
 
mov       rcx,rax
mov       r11,7FFF53F90FB8
call      qword ptr [r11]
jmp       near ptr M01_L26
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
mov       rbp,[rcx+48]
mov       [rsp+48],rbp
lea       rbp,[rbp+160]
cmp       qword ptr [rbp-0E8],0
je        short M01_L31
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-0E8]
cmp       [rax],rcx
je        short M01_L31
mov       rcx,rax
mov       r11,7FFF53F90FB8
call      qword ptr [r11]
M01_L31
 
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].Freeze(System.Action`1>>)
M02_L00
 
push      rsi
push      rbx
sub       rsp,58
vzeroupper
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+20],xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
xor       eax,eax
mov       [rsp+50],rax
mov       rbx,rcx
mov       rsi,rdx
cmp       byte ptr [rbx+1C],0
jne       short M02_L02
test      rsi,rsi
je        short M02_L01
mov       ecx,[rbx+18]
vmovdqu   xmm0,xmmword ptr [rbx+20]
vmovdqu   xmmword ptr [rsp+20],xmm0
mov       rdx,[rbx+30]
mov       [rsp+30],rdx
mov       [rsp+38],ecx
vmovdqu   xmm0,xmmword ptr [rsp+20]
vmovdqu   xmmword ptr [rsp+40],xmm0
mov       rcx,[rsp+30]
mov       [rsp+50],rcx
mov       rcx,offset System.Collections.Immutable.ImmutableDictionary`2+<>c[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].<.cctor>b__107_0(System.Collections.Generic.KeyValuePair`2>)
cmp       [rsi+18],rcx
jne       short M02_L03
mov       rcx,[rsi+8]
lea       rdx,[rsp+38]
call      qword ptr [7FFF54B9DDA0]; System.Collections.Immutable.ImmutableDictionary`2+<>c[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].<.cctor>b__107_0(System.Collections.Generic.KeyValuePair`2>)
M02_L01
 
mov       rcx,[rbx+8]
mov       rdx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFF54B9EE98]
mov       rcx,[rbx+10]
mov       rdx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFF54B9EE98]
mov       byte ptr [rbx+1C],1
M02_L02
 
add       rsp,58
pop       rbx
pop       rsi
ret
M02_L03
 
lea       rdx,[rsp+38]
mov       rcx,[rsi+8]
call      qword ptr [rsi+18]
jmp       short M02_L01
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M03_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M03_L02
test      rbx,rbx
je        short M03_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M03_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M03_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF54185B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF54185B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L01
 
call      qword ptr [7FFF54445D58]
int       3
M03_L02
 
test      rbx,rbx
je        short M03_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M03_L04
M03_L03
 
mov       rax,23432AE0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToImmutableDictionary()
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,50
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
mov       rbx,rcx
mov       r8,[rbx+280]
test      r8,r8
je        near ptr M00_L02
mov       r9,1D287007630
mov       rsi,[r9]
cmp       dword ptr [rsi+18],0
jne       short M00_L00
mov       rcx,r8
mov       r9,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rcx],r9
je        near ptr M00_L04
mov       rcx,r8
mov       r9,offset MT_System.Collections.Immutable.ImmutableDictionary`2+Builder[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rcx],r9
je        near ptr M00_L03
M00_L00
 
mov       r9,[rsi+8]
mov       rcx,[rsi+10]
mov       [rsp+28],r9
mov       [rsp+30],rcx
mov       dword ptr [rsp+20],2
lea       r9,[rsp+28]
lea       rcx,[rsp+40]
mov       rdx,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      qword ptr [7FFF54BCCE88]; System.Collections.Immutable.ImmutableDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, MutationInput, KeyCollisionBehavior)
mov       rdi,[rsp+40]
mov       ebp,[rsi+18]
add       ebp,[rsp+48]
test      rdi,rdi
je        near ptr M00_L05
cmp       [rsi+8],rdi
je        near ptr M00_L07
cmp       qword ptr [rdi+8],0
je        near ptr M00_L05
mov       rcx,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rdx,[rsi+10]
test      rdx,rdx
je        near ptr M00_L06
lea       rcx,[r14+10]
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,1D27F001FE8
mov       rdx,[rcx]
lea       rcx,[r14+8]
call      CORINFO_HELP_ASSIGN_REF
mov       rdx,1D287007638
mov       rdx,[rdx]
mov       rcx,rdi
call      qword ptr [7FFF54BCEE98]; System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].Freeze(System.Action`1>>)
lea       rcx,[r14+8]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       [r14+18],ebp
M00_L01
 
mov       [rsp+38],r14
mov       rsi,[rbx+18]
mov       rdx,[rsp+38]
lea       rcx,[rsi+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rsi+8],rax
add       rsp,50
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
ret
M00_L02
 
call      qword ptr [7FFF546944C8]
mov       ecx,43
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       r14,rax
mov       ecx,1436
mov       rdx,7FFF54496D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,r14
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546942B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542F6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L03
 
cmp       [rcx],ecx
call      qword ptr [7FFF54C04888]
mov       rcx,rax
M00_L04
 
mov       r8,[rsi+10]
mov       r8,[r8+10]
mov       rdx,[rsi+10]
mov       rdx,[rdx+8]
cmp       [rcx],ecx
call      qword ptr [7FFF54BCCAC8]
mov       r14,rax
jmp       near ptr M00_L01
M00_L05
 
mov       rcx,rsi
call      qword ptr [7FFF54BCC858]
mov       r14,rax
jmp       near ptr M00_L01
M00_L06
 
mov       ecx,6DB
mov       rdx,7FFF54BD72A0
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF54BCF5D0]
int       3
M00_L07
 
mov       r14,rsi
jmp       near ptr M00_L01
 
System.Collections.Immutable.ImmutableDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, MutationInput, KeyCollisionBehavior)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,128
vzeroupper
lea       rbp,[rsp+160]
vxorps    xmm4,xmm4,xmm4
mov       rax,0FFFFFFFFFFFFFF70
M01_L00
 
vmovdqa   xmmword ptr [rbp+rax-40],xmm4
vmovdqa   xmmword ptr [rbp+rax-30],xmm4
vmovdqa   xmmword ptr [rbp+rax-20],xmm4
add       rax,30
jne       short M01_L00
mov       [rbp-118],rsp
mov       [rbp-40],rdx
mov       rdi,rcx
mov       rbx,rdx
mov       r14,r8
mov       esi,[rbp+30]
mov       r15,[r9]
mov       r13,[r9+8]
test      r14,r14
je        near ptr M01_L29
xor       r12d,r12d
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+68]
test      r11,r11
je        near ptr M01_L24
M01_L01
 
mov       rcx,r14
call      qword ptr [r11]
mov       [rbp-0E8],rax
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r14,[rcx+88]
test      r14,r14
je        short M01_L03
M01_L02
 
jmp       near ptr M01_L11
M01_L03
 
mov       rcx,rbx
mov       rdx,7FFF54BEB418
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r14,rax
jmp       short M01_L02
M01_L04
 
mov       rcx,rbx
mov       rdx,7FFF54BEB270
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L06
M01_L05
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+70]
test      r11,r11
je        short M01_L04
M01_L06
 
lea       rdx,[rbp-50]
mov       rcx,[rbp-0E8]
call      qword ptr [r11]
mov       rcx,[rbp-50]
test      rcx,rcx
je        near ptr M01_L15
mov       rcx,[r13+8]
mov       r11,r14
mov       rdx,[rbp-50]
call      qword ptr [r11]
mov       [rbp-54],eax
cmp       [r15],r15b
mov       r8,r15
M01_L07
 
mov       rcx,[r8+8]
test      rcx,rcx
je        near ptr M01_L20
mov       edx,[r8+18]
cmp       eax,edx
je        near ptr M01_L14
jle       short M01_L08
mov       r8,[r8+10]
mov       eax,[rbp-54]
jmp       short M01_L07
M01_L08
 
mov       r8,rcx
mov       eax,[rbp-54]
jmp       short M01_L07
M01_L09
 
lea       r8,[rbp-0D8]
mov       [rsp+20],r8
lea       r8,[rbp-0E0]
mov       [rsp+28],r8
lea       r8,[rbp-0D0]
mov       rcx,r15
mov       edx,[rbp-54]
mov       r9,r13
call      qword ptr [7FFF54BCEE38]; System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].SetItem(Int32, HashBucket, System.Collections.Generic.IEqualityComparer`1>, Boolean ByRef, Boolean ByRef)
mov       r15,rax
M01_L10
 
cmp       dword ptr [rbp-78],1
jne       short M01_L11
mov       rax,[rbp-0E8]
inc       r12d
M01_L11
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-0E8]
cmp       [rax],rcx
jne       near ptr M01_L18
lea       r8,[rax+8]
mov       [rbp-100],r8
mov       ecx,[r8+8]
mov       rdx,[r8]
cmp       ecx,[rdx+44]
jne       near ptr M01_L17
M01_L12
 
mov       ecx,[r8+0C]
mov       r10,[r8]
cmp       ecx,[r10+38]
jae       near ptr M01_L19
mov       rdx,[r10+10]
lea       r10d,[rcx+1]
mov       [r8+0C],r10d
cmp       ecx,[rdx+8]
jae       short M01_L13
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L12
mov       rdx,[rcx]
mov       r10,[rcx+8]
mov       [rbp-108],r10
lea       rcx,[r8+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-100]
lea       rcx,[rax+20]
mov       rdx,[rbp-108]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L05
M01_L13
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L14
 
vmovdqu   xmm0,xmmword ptr [r8+20]
vmovdqu   xmmword ptr [rbp-0B8],xmm0
mov       rcx,[r8+30]
mov       [rbp-0A8],rcx
jmp       near ptr M01_L21
M01_L15
 
mov       ecx,717
mov       rdx,7FFF54BD72A0
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF54BCF5D0]
int       3
M01_L16
 
mov       eax,[rbp-54]
lea       r8,[rbp-0D8]
mov       rcx,r15
mov       edx,eax
call      qword ptr [7FFF54BCEF88]
mov       r15,rax
jmp       near ptr M01_L10
M01_L17
 
call      qword ptr [7FFF54475E00]
int       3
M01_L18
 
mov       rcx,rax
mov       r11,7FFF53FC0FB0
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L05
mov       rax,[rbp-0E8]
jmp       near ptr M01_L25
M01_L19
 
mov       rax,[rbp-0E8]
mov       ecx,[r10+38]
inc       ecx
mov       [r8+0C],ecx
xor       ecx,ecx
mov       [r8+18],rcx
mov       [r8+20],rcx
jmp       near ptr M01_L25
M01_L20
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-0B8],xmm0
vmovdqu   xmmword ptr [rbp-0B0],xmm0
M01_L21
 
vmovdqu   xmm0,xmmword ptr [rbp-0B8]
vmovdqu   xmmword ptr [rbp-70],xmm0
mov       rcx,[rbp-0A8]
mov       [rbp-60],rcx
mov       r8,[rbp-50]
mov       [rbp-0F0],r8
mov       r10,[rbp-48]
mov       [rbp-0F8],r10
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r9,[rcx+90]
test      r9,r9
je        short M01_L23
M01_L22
 
mov       r10,[rbp-0F8]
mov       [rsp+20],r10
mov       [rsp+28],r13
mov       rcx,[r13+10]
mov       [rsp+30],rcx
mov       [rsp+38],esi
lea       rcx,[rbp-78]
mov       [rsp+40],rcx
mov       r8,r9
lea       rcx,[rbp-70]
lea       rdx,[rbp-90]
mov       r9,[rbp-0F0]
call      qword ptr [7FFF54BCE178]; System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].Add(System.__Canon, System.__Canon, System.Collections.Generic.IEqualityComparer`1>, System.Collections.Generic.IEqualityComparer`1, KeyCollisionBehavior, OperationResult ByRef)
vmovdqu   xmm0,xmmword ptr [rbp-90]
vmovdqu   xmmword ptr [rbp-0D0],xmm0
mov       rcx,[rbp-80]
mov       [rbp-0C0],rcx
cmp       qword ptr [rbp-0D0],0
je        near ptr M01_L16
jmp       near ptr M01_L09
M01_L23
 
mov       rcx,rbx
mov       rdx,7FFF54BEB430
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r8,rax
mov       r9,r8
jmp       near ptr M01_L22
M01_L24
 
mov       rcx,rbx
mov       rdx,7FFF54BEB250
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L01
M01_L25
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       near ptr M01_L30
M01_L26
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-0A0],xmm0
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rdx,[rcx+50]
test      rdx,rdx
je        short M01_L28
M01_L27
 
lea       rcx,[rbp-0A0]
mov       r8,r15
mov       r9d,r12d
call      qword ptr [7FFF54BCF9A8]; System.Collections.Immutable.ImmutableDictionary`2+MutationResult[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Immutable.SortedInt32KeyNode`1>, Int32)
mov       rdx,[rbp-0A0]
mov       rcx,rdi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       eax,[rbp-98]
mov       [rdi+8],eax
mov       rax,rdi
add       rsp,128
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L28
 
mov       rcx,rbx
mov       rdx,7FFF54BE9D38
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rdx,rax
jmp       short M01_L27
M01_L29
 
mov       ecx,40B
mov       rdx,7FFF54BD72A0
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF54BCF5D0]
int       3
M01_L30
 
mov       rcx,rax
mov       r11,7FFF53FC0FB8
call      qword ptr [r11]
jmp       near ptr M01_L26
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
mov       rbp,[rcx+48]
mov       [rsp+48],rbp
lea       rbp,[rbp+160]
cmp       qword ptr [rbp-0E8],0
je        short M01_L31
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-0E8]
cmp       [rax],rcx
je        short M01_L31
mov       rcx,rax
mov       r11,7FFF53FC0FB8
call      qword ptr [r11]
M01_L31
 
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].Freeze(System.Action`1>>)
M02_L00
 
push      rsi
push      rbx
sub       rsp,58
vzeroupper
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+20],xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
xor       eax,eax
mov       [rsp+50],rax
mov       rbx,rcx
mov       rsi,rdx
cmp       byte ptr [rbx+1C],0
jne       short M02_L02
test      rsi,rsi
je        short M02_L01
mov       ecx,[rbx+18]
vmovdqu   xmm0,xmmword ptr [rbx+20]
vmovdqu   xmmword ptr [rsp+20],xmm0
mov       rdx,[rbx+30]
mov       [rsp+30],rdx
mov       [rsp+38],ecx
vmovdqu   xmm0,xmmword ptr [rsp+20]
vmovdqu   xmmword ptr [rsp+40],xmm0
mov       rcx,[rsp+30]
mov       [rsp+50],rcx
mov       rcx,offset System.Collections.Immutable.ImmutableDictionary`2+<>c[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].<.cctor>b__107_0(System.Collections.Generic.KeyValuePair`2>)
cmp       [rsi+18],rcx
jne       short M02_L03
mov       rcx,[rsi+8]
lea       rdx,[rsp+38]
call      qword ptr [7FFF54BCDDA0]; System.Collections.Immutable.ImmutableDictionary`2+<>c[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].<.cctor>b__107_0(System.Collections.Generic.KeyValuePair`2>)
M02_L01
 
mov       rcx,[rbx+8]
mov       rdx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFF54BCEE98]
mov       rcx,[rbx+10]
mov       rdx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFF54BCEE98]
mov       byte ptr [rbx+1C],1
M02_L02
 
add       rsp,58
pop       rbx
pop       rsi
ret
M02_L03
 
lea       rdx,[rsp+38]
mov       rcx,[rsi+8]
call      qword ptr [rsi+18]
jmp       short M02_L01
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M03_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M03_L02
test      rbx,rbx
je        short M03_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M03_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M03_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF541B5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF541B5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L01
 
call      qword ptr [7FFF54475D58]
int       3
M03_L02
 
test      rbx,rbx
je        short M03_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M03_L04
M03_L03
 
mov       rax,21311090008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToImmutableDictionary()
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,50
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
mov       rbx,rcx
mov       r8,[rbx+280]
test      r8,r8
je        near ptr M00_L02
mov       r9,1D230414740
mov       rsi,[r9]
cmp       dword ptr [rsi+18],0
jne       short M00_L00
mov       rcx,r8
mov       r9,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rcx],r9
je        near ptr M00_L04
mov       rcx,r8
mov       r9,offset MT_System.Collections.Immutable.ImmutableDictionary`2+Builder[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rcx],r9
je        near ptr M00_L03
M00_L00
 
mov       r9,[rsi+8]
mov       rcx,[rsi+10]
mov       [rsp+28],r9
mov       [rsp+30],rcx
mov       dword ptr [rsp+20],2
lea       r9,[rsp+28]
lea       rcx,[rsp+40]
mov       rdx,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      qword ptr [7FFF54B9CE88]; System.Collections.Immutable.ImmutableDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, MutationInput, KeyCollisionBehavior)
mov       rdi,[rsp+40]
mov       ebp,[rsi+18]
add       ebp,[rsp+48]
test      rdi,rdi
je        near ptr M00_L05
cmp       [rsi+8],rdi
je        near ptr M00_L07
cmp       qword ptr [rdi+8],0
je        near ptr M00_L05
mov       rcx,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rdx,[rsi+10]
test      rdx,rdx
je        near ptr M00_L06
lea       rcx,[r14+10]
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,1D230401FE8
mov       rdx,[rcx]
lea       rcx,[r14+8]
call      CORINFO_HELP_ASSIGN_REF
mov       rdx,1D230414748
mov       rdx,[rdx]
mov       rcx,rdi
call      qword ptr [7FFF54B9EE98]; System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].Freeze(System.Action`1>>)
lea       rcx,[r14+8]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       [r14+18],ebp
M00_L01
 
mov       [rsp+38],r14
mov       rsi,[rbx+18]
mov       rdx,[rsp+38]
lea       rcx,[rsi+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rsi+8],rax
add       rsp,50
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
ret
M00_L02
 
call      qword ptr [7FFF546644C8]
mov       ecx,43
mov       rdx,7FFF545DA408
call      CORINFO_HELP_STRCNS
mov       r14,rax
mov       ecx,1436
mov       rdx,7FFF54466D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,r14
call      qword ptr [7FFF540D6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545DA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540D6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546642B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542C6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L03
 
cmp       [rcx],ecx
call      qword ptr [7FFF54BE4888]
mov       rcx,rax
M00_L04
 
mov       r8,[rsi+10]
mov       r8,[r8+10]
mov       rdx,[rsi+10]
mov       rdx,[rdx+8]
cmp       [rcx],ecx
call      qword ptr [7FFF54B9CAC8]
mov       r14,rax
jmp       near ptr M00_L01
M00_L05
 
mov       rcx,rsi
call      qword ptr [7FFF54B9C858]
mov       r14,rax
jmp       near ptr M00_L01
M00_L06
 
mov       ecx,6DB
mov       rdx,7FFF54BA76C8
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF54B9F5D0]
int       3
M00_L07
 
mov       r14,rsi
jmp       near ptr M00_L01
 
System.Collections.Immutable.ImmutableDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, MutationInput, KeyCollisionBehavior)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,128
vzeroupper
lea       rbp,[rsp+160]
vxorps    xmm4,xmm4,xmm4
mov       rax,0FFFFFFFFFFFFFF70
M01_L00
 
vmovdqa   xmmword ptr [rbp+rax-40],xmm4
vmovdqa   xmmword ptr [rbp+rax-30],xmm4
vmovdqa   xmmword ptr [rbp+rax-20],xmm4
add       rax,30
jne       short M01_L00
mov       [rbp-118],rsp
mov       [rbp-40],rdx
mov       rdi,rcx
mov       rbx,rdx
mov       r14,r8
mov       esi,[rbp+30]
mov       r15,[r9]
mov       r13,[r9+8]
test      r14,r14
je        near ptr M01_L29
xor       r12d,r12d
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+68]
test      r11,r11
je        near ptr M01_L24
M01_L01
 
mov       rcx,r14
call      qword ptr [r11]
mov       [rbp-0E8],rax
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r14,[rcx+88]
test      r14,r14
je        short M01_L03
M01_L02
 
jmp       near ptr M01_L11
M01_L03
 
mov       rcx,rbx
mov       rdx,7FFF54BC5860
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r14,rax
jmp       short M01_L02
M01_L04
 
mov       rcx,rbx
mov       rdx,7FFF54BC56B8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L06
M01_L05
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+70]
test      r11,r11
je        short M01_L04
M01_L06
 
lea       rdx,[rbp-50]
mov       rcx,[rbp-0E8]
call      qword ptr [r11]
mov       rcx,[rbp-50]
test      rcx,rcx
je        near ptr M01_L15
mov       rcx,[r13+8]
mov       r11,r14
mov       rdx,[rbp-50]
call      qword ptr [r11]
mov       [rbp-54],eax
cmp       [r15],r15b
mov       r8,r15
M01_L07
 
mov       rcx,[r8+8]
test      rcx,rcx
je        near ptr M01_L20
mov       edx,[r8+18]
cmp       eax,edx
je        near ptr M01_L14
jle       short M01_L08
mov       r8,[r8+10]
mov       eax,[rbp-54]
jmp       short M01_L07
M01_L08
 
mov       r8,rcx
mov       eax,[rbp-54]
jmp       short M01_L07
M01_L09
 
lea       r8,[rbp-0D8]
mov       [rsp+20],r8
lea       r8,[rbp-0E0]
mov       [rsp+28],r8
lea       r8,[rbp-0D0]
mov       rcx,r15
mov       edx,[rbp-54]
mov       r9,r13
call      qword ptr [7FFF54B9EE38]; System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].SetItem(Int32, HashBucket, System.Collections.Generic.IEqualityComparer`1>, Boolean ByRef, Boolean ByRef)
mov       r15,rax
M01_L10
 
cmp       dword ptr [rbp-78],1
jne       short M01_L11
mov       rax,[rbp-0E8]
inc       r12d
M01_L11
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-0E8]
cmp       [rax],rcx
jne       near ptr M01_L18
lea       r8,[rax+8]
mov       [rbp-100],r8
mov       ecx,[r8+8]
mov       rdx,[r8]
cmp       ecx,[rdx+44]
jne       near ptr M01_L17
M01_L12
 
mov       ecx,[r8+0C]
mov       r10,[r8]
cmp       ecx,[r10+38]
jae       near ptr M01_L19
mov       rdx,[r10+10]
lea       r10d,[rcx+1]
mov       [r8+0C],r10d
cmp       ecx,[rdx+8]
jae       short M01_L13
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L12
mov       rdx,[rcx]
mov       r10,[rcx+8]
mov       [rbp-108],r10
lea       rcx,[r8+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-100]
lea       rcx,[rax+20]
mov       rdx,[rbp-108]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L05
M01_L13
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L14
 
vmovdqu   xmm0,xmmword ptr [r8+20]
vmovdqu   xmmword ptr [rbp-0B8],xmm0
mov       rcx,[r8+30]
mov       [rbp-0A8],rcx
jmp       near ptr M01_L21
M01_L15
 
mov       ecx,717
mov       rdx,7FFF54BA76C8
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF54B9F5D0]
int       3
M01_L16
 
mov       eax,[rbp-54]
lea       r8,[rbp-0D8]
mov       rcx,r15
mov       edx,eax
call      qword ptr [7FFF54B9EF88]
mov       r15,rax
jmp       near ptr M01_L10
M01_L17
 
call      qword ptr [7FFF54445E00]
int       3
M01_L18
 
mov       rcx,rax
mov       r11,7FFF53F90FB0
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L05
mov       rax,[rbp-0E8]
jmp       near ptr M01_L25
M01_L19
 
mov       rax,[rbp-0E8]
mov       ecx,[r10+38]
inc       ecx
mov       [r8+0C],ecx
xor       ecx,ecx
mov       [r8+18],rcx
mov       [r8+20],rcx
jmp       near ptr M01_L25
M01_L20
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-0B8],xmm0
vmovdqu   xmmword ptr [rbp-0B0],xmm0
M01_L21
 
vmovdqu   xmm0,xmmword ptr [rbp-0B8]
vmovdqu   xmmword ptr [rbp-70],xmm0
mov       rcx,[rbp-0A8]
mov       [rbp-60],rcx
mov       r8,[rbp-50]
mov       [rbp-0F0],r8
mov       r10,[rbp-48]
mov       [rbp-0F8],r10
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r9,[rcx+90]
test      r9,r9
je        short M01_L23
M01_L22
 
mov       r10,[rbp-0F8]
mov       [rsp+20],r10
mov       [rsp+28],r13
mov       rcx,[r13+10]
mov       [rsp+30],rcx
mov       [rsp+38],esi
lea       rcx,[rbp-78]
mov       [rsp+40],rcx
mov       r8,r9
lea       rcx,[rbp-70]
lea       rdx,[rbp-90]
mov       r9,[rbp-0F0]
call      qword ptr [7FFF54B9E178]; System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].Add(System.__Canon, System.__Canon, System.Collections.Generic.IEqualityComparer`1>, System.Collections.Generic.IEqualityComparer`1, KeyCollisionBehavior, OperationResult ByRef)
vmovdqu   xmm0,xmmword ptr [rbp-90]
vmovdqu   xmmword ptr [rbp-0D0],xmm0
mov       rcx,[rbp-80]
mov       [rbp-0C0],rcx
cmp       qword ptr [rbp-0D0],0
je        near ptr M01_L16
jmp       near ptr M01_L09
M01_L23
 
mov       rcx,rbx
mov       rdx,7FFF54BC5878
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r8,rax
mov       r9,r8
jmp       near ptr M01_L22
M01_L24
 
mov       rcx,rbx
mov       rdx,7FFF54BC5698
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L01
M01_L25
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       near ptr M01_L30
M01_L26
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-0A0],xmm0
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rdx,[rcx+50]
test      rdx,rdx
je        short M01_L28
M01_L27
 
lea       rcx,[rbp-0A0]
mov       r8,r15
mov       r9d,r12d
call      qword ptr [7FFF54B9F9A8]; System.Collections.Immutable.ImmutableDictionary`2+MutationResult[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Immutable.SortedInt32KeyNode`1>, Int32)
mov       rdx,[rbp-0A0]
mov       rcx,rdi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       eax,[rbp-98]
mov       [rdi+8],eax
mov       rax,rdi
add       rsp,128
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L28
 
mov       rcx,rbx
mov       rdx,7FFF54BC4180
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rdx,rax
jmp       short M01_L27
M01_L29
 
mov       ecx,40B
mov       rdx,7FFF54BA76C8
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF54B9F5D0]
int       3
M01_L30
 
mov       rcx,rax
mov       r11,7FFF53F90FB8
call      qword ptr [r11]
jmp       near ptr M01_L26
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
mov       rbp,[rcx+48]
mov       [rsp+48],rbp
lea       rbp,[rbp+160]
cmp       qword ptr [rbp-0E8],0
je        short M01_L31
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-0E8]
cmp       [rax],rcx
je        short M01_L31
mov       rcx,rax
mov       r11,7FFF53F90FB8
call      qword ptr [r11]
M01_L31
 
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].Freeze(System.Action`1>>)
M02_L00
 
push      rsi
push      rbx
sub       rsp,58
vzeroupper
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+20],xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
xor       eax,eax
mov       [rsp+50],rax
mov       rbx,rcx
mov       rsi,rdx
cmp       byte ptr [rbx+1C],0
jne       short M02_L02
test      rsi,rsi
je        short M02_L01
mov       ecx,[rbx+18]
vmovdqu   xmm0,xmmword ptr [rbx+20]
vmovdqu   xmmword ptr [rsp+20],xmm0
mov       rdx,[rbx+30]
mov       [rsp+30],rdx
mov       [rsp+38],ecx
vmovdqu   xmm0,xmmword ptr [rsp+20]
vmovdqu   xmmword ptr [rsp+40],xmm0
mov       rcx,[rsp+30]
mov       [rsp+50],rcx
mov       rcx,offset System.Collections.Immutable.ImmutableDictionary`2+<>c[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].<.cctor>b__107_0(System.Collections.Generic.KeyValuePair`2>)
cmp       [rsi+18],rcx
jne       short M02_L03
mov       rcx,[rsi+8]
lea       rdx,[rsp+38]
call      qword ptr [7FFF54B9DDA0]; System.Collections.Immutable.ImmutableDictionary`2+<>c[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].<.cctor>b__107_0(System.Collections.Generic.KeyValuePair`2>)
M02_L01
 
mov       rcx,[rbx+8]
mov       rdx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFF54B9EE98]
mov       rcx,[rbx+10]
mov       rdx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFF54B9EE98]
mov       byte ptr [rbx+1C],1
M02_L02
 
add       rsp,58
pop       rbx
pop       rsi
ret
M02_L03
 
lea       rdx,[rsp+38]
mov       rcx,[rsi+8]
call      qword ptr [rsi+18]
jmp       short M02_L01
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M03_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M03_L02
test      rbx,rbx
je        short M03_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M03_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M03_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF54185B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF54185B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L01
 
call      qword ptr [7FFF54445D58]
int       3
M03_L02
 
test      rbx,rbx
je        short M03_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M03_L04
M03_L03
 
mov       rax,212C24D0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToImmutableDictionary()
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,50
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
mov       rbx,rcx
mov       r8,[rbx+280]
test      r8,r8
je        near ptr M00_L02
mov       r9,1DE93412748
mov       rsi,[r9]
cmp       dword ptr [rsi+18],0
jne       short M00_L00
mov       rcx,r8
mov       r9,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rcx],r9
je        near ptr M00_L04
mov       rcx,r8
mov       r9,offset MT_System.Collections.Immutable.ImmutableDictionary`2+Builder[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rcx],r9
je        near ptr M00_L03
M00_L00
 
mov       r9,[rsi+8]
mov       rcx,[rsi+10]
mov       [rsp+28],r9
mov       [rsp+30],rcx
mov       dword ptr [rsp+20],2
lea       r9,[rsp+28]
lea       rcx,[rsp+40]
mov       rdx,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      qword ptr [7FFF54B9CE88]; System.Collections.Immutable.ImmutableDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, MutationInput, KeyCollisionBehavior)
mov       rdi,[rsp+40]
mov       ebp,[rsi+18]
add       ebp,[rsp+48]
test      rdi,rdi
je        near ptr M00_L05
cmp       [rsi+8],rdi
je        near ptr M00_L07
cmp       qword ptr [rdi+8],0
je        near ptr M00_L05
mov       rcx,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rdx,[rsi+10]
test      rdx,rdx
je        near ptr M00_L06
lea       rcx,[r14+10]
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,1DE97401FE8
mov       rdx,[rcx]
lea       rcx,[r14+8]
call      CORINFO_HELP_ASSIGN_REF
mov       rdx,1DE93412750
mov       rdx,[rdx]
mov       rcx,rdi
call      qword ptr [7FFF54B9EE98]; System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].Freeze(System.Action`1>>)
lea       rcx,[r14+8]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       [r14+18],ebp
M00_L01
 
mov       [rsp+38],r14
mov       rsi,[rbx+18]
mov       rdx,[rsp+38]
lea       rcx,[rsi+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rsi+8],rax
add       rsp,50
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
ret
M00_L02
 
call      qword ptr [7FFF546644C8]
mov       ecx,43
mov       rdx,7FFF545DA408
call      CORINFO_HELP_STRCNS
mov       r14,rax
mov       ecx,1436
mov       rdx,7FFF54466D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,r14
call      qword ptr [7FFF540D6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545DA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540D6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546642B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542C6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L03
 
cmp       [rcx],ecx
call      qword ptr [7FFF54BE4888]
mov       rcx,rax
M00_L04
 
mov       r8,[rsi+10]
mov       r8,[r8+10]
mov       rdx,[rsi+10]
mov       rdx,[rdx+8]
cmp       [rcx],ecx
call      qword ptr [7FFF54B9CAC8]
mov       r14,rax
jmp       near ptr M00_L01
M00_L05
 
mov       rcx,rsi
call      qword ptr [7FFF54B9C858]
mov       r14,rax
jmp       near ptr M00_L01
M00_L06
 
mov       ecx,6DB
mov       rdx,7FFF54BA76C8
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF54B9F5D0]
int       3
M00_L07
 
mov       r14,rsi
jmp       near ptr M00_L01
 
System.Collections.Immutable.ImmutableDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, MutationInput, KeyCollisionBehavior)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,128
vzeroupper
lea       rbp,[rsp+160]
vxorps    xmm4,xmm4,xmm4
mov       rax,0FFFFFFFFFFFFFF70
M01_L00
 
vmovdqa   xmmword ptr [rbp+rax-40],xmm4
vmovdqa   xmmword ptr [rbp+rax-30],xmm4
vmovdqa   xmmword ptr [rbp+rax-20],xmm4
add       rax,30
jne       short M01_L00
mov       [rbp-118],rsp
mov       [rbp-40],rdx
mov       rdi,rcx
mov       rbx,rdx
mov       r14,r8
mov       esi,[rbp+30]
mov       r15,[r9]
mov       r13,[r9+8]
test      r14,r14
je        near ptr M01_L29
xor       r12d,r12d
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+68]
test      r11,r11
je        near ptr M01_L24
M01_L01
 
mov       rcx,r14
call      qword ptr [r11]
mov       [rbp-0E8],rax
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r14,[rcx+88]
test      r14,r14
je        short M01_L03
M01_L02
 
jmp       near ptr M01_L11
M01_L03
 
mov       rcx,rbx
mov       rdx,7FFF54BC5860
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r14,rax
jmp       short M01_L02
M01_L04
 
mov       rcx,rbx
mov       rdx,7FFF54BC56B8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L06
M01_L05
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+70]
test      r11,r11
je        short M01_L04
M01_L06
 
lea       rdx,[rbp-50]
mov       rcx,[rbp-0E8]
call      qword ptr [r11]
mov       rcx,[rbp-50]
test      rcx,rcx
je        near ptr M01_L15
mov       rcx,[r13+8]
mov       r11,r14
mov       rdx,[rbp-50]
call      qword ptr [r11]
mov       [rbp-54],eax
cmp       [r15],r15b
mov       r8,r15
M01_L07
 
mov       rcx,[r8+8]
test      rcx,rcx
je        near ptr M01_L20
mov       edx,[r8+18]
cmp       eax,edx
je        near ptr M01_L14
jle       short M01_L08
mov       r8,[r8+10]
mov       eax,[rbp-54]
jmp       short M01_L07
M01_L08
 
mov       r8,rcx
mov       eax,[rbp-54]
jmp       short M01_L07
M01_L09
 
lea       r8,[rbp-0D8]
mov       [rsp+20],r8
lea       r8,[rbp-0E0]
mov       [rsp+28],r8
lea       r8,[rbp-0D0]
mov       rcx,r15
mov       edx,[rbp-54]
mov       r9,r13
call      qword ptr [7FFF54B9EE38]; System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].SetItem(Int32, HashBucket, System.Collections.Generic.IEqualityComparer`1>, Boolean ByRef, Boolean ByRef)
mov       r15,rax
M01_L10
 
cmp       dword ptr [rbp-78],1
jne       short M01_L11
mov       rax,[rbp-0E8]
inc       r12d
M01_L11
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-0E8]
cmp       [rax],rcx
jne       near ptr M01_L18
lea       r8,[rax+8]
mov       [rbp-100],r8
mov       ecx,[r8+8]
mov       rdx,[r8]
cmp       ecx,[rdx+44]
jne       near ptr M01_L17
M01_L12
 
mov       ecx,[r8+0C]
mov       r10,[r8]
cmp       ecx,[r10+38]
jae       near ptr M01_L19
mov       rdx,[r10+10]
lea       r10d,[rcx+1]
mov       [r8+0C],r10d
cmp       ecx,[rdx+8]
jae       short M01_L13
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L12
mov       rdx,[rcx]
mov       r10,[rcx+8]
mov       [rbp-108],r10
lea       rcx,[r8+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-100]
lea       rcx,[rax+20]
mov       rdx,[rbp-108]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L05
M01_L13
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L14
 
vmovdqu   xmm0,xmmword ptr [r8+20]
vmovdqu   xmmword ptr [rbp-0B8],xmm0
mov       rcx,[r8+30]
mov       [rbp-0A8],rcx
jmp       near ptr M01_L21
M01_L15
 
mov       ecx,717
mov       rdx,7FFF54BA76C8
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF54B9F5D0]
int       3
M01_L16
 
mov       eax,[rbp-54]
lea       r8,[rbp-0D8]
mov       rcx,r15
mov       edx,eax
call      qword ptr [7FFF54B9EF88]
mov       r15,rax
jmp       near ptr M01_L10
M01_L17
 
call      qword ptr [7FFF54445E00]
int       3
M01_L18
 
mov       rcx,rax
mov       r11,7FFF53F90FB0
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L05
mov       rax,[rbp-0E8]
jmp       near ptr M01_L25
M01_L19
 
mov       rax,[rbp-0E8]
mov       ecx,[r10+38]
inc       ecx
mov       [r8+0C],ecx
xor       ecx,ecx
mov       [r8+18],rcx
mov       [r8+20],rcx
jmp       near ptr M01_L25
M01_L20
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-0B8],xmm0
vmovdqu   xmmword ptr [rbp-0B0],xmm0
M01_L21
 
vmovdqu   xmm0,xmmword ptr [rbp-0B8]
vmovdqu   xmmword ptr [rbp-70],xmm0
mov       rcx,[rbp-0A8]
mov       [rbp-60],rcx
mov       r8,[rbp-50]
mov       [rbp-0F0],r8
mov       r10,[rbp-48]
mov       [rbp-0F8],r10
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r9,[rcx+90]
test      r9,r9
je        short M01_L23
M01_L22
 
mov       r10,[rbp-0F8]
mov       [rsp+20],r10
mov       [rsp+28],r13
mov       rcx,[r13+10]
mov       [rsp+30],rcx
mov       [rsp+38],esi
lea       rcx,[rbp-78]
mov       [rsp+40],rcx
mov       r8,r9
lea       rcx,[rbp-70]
lea       rdx,[rbp-90]
mov       r9,[rbp-0F0]
call      qword ptr [7FFF54B9E178]; System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].Add(System.__Canon, System.__Canon, System.Collections.Generic.IEqualityComparer`1>, System.Collections.Generic.IEqualityComparer`1, KeyCollisionBehavior, OperationResult ByRef)
vmovdqu   xmm0,xmmword ptr [rbp-90]
vmovdqu   xmmword ptr [rbp-0D0],xmm0
mov       rcx,[rbp-80]
mov       [rbp-0C0],rcx
cmp       qword ptr [rbp-0D0],0
je        near ptr M01_L16
jmp       near ptr M01_L09
M01_L23
 
mov       rcx,rbx
mov       rdx,7FFF54BC5878
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r8,rax
mov       r9,r8
jmp       near ptr M01_L22
M01_L24
 
mov       rcx,rbx
mov       rdx,7FFF54BC5698
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L01
M01_L25
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       near ptr M01_L30
M01_L26
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-0A0],xmm0
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rdx,[rcx+50]
test      rdx,rdx
je        short M01_L28
M01_L27
 
lea       rcx,[rbp-0A0]
mov       r8,r15
mov       r9d,r12d
call      qword ptr [7FFF54B9F9A8]; System.Collections.Immutable.ImmutableDictionary`2+MutationResult[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Immutable.SortedInt32KeyNode`1>, Int32)
mov       rdx,[rbp-0A0]
mov       rcx,rdi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       eax,[rbp-98]
mov       [rdi+8],eax
mov       rax,rdi
add       rsp,128
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L28
 
mov       rcx,rbx
mov       rdx,7FFF54BC4180
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rdx,rax
jmp       short M01_L27
M01_L29
 
mov       ecx,40B
mov       rdx,7FFF54BA76C8
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF54B9F5D0]
int       3
M01_L30
 
mov       rcx,rax
mov       r11,7FFF53F90FB8
call      qword ptr [r11]
jmp       near ptr M01_L26
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
mov       rbp,[rcx+48]
mov       [rsp+48],rbp
lea       rbp,[rbp+160]
cmp       qword ptr [rbp-0E8],0
je        short M01_L31
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-0E8]
cmp       [rax],rcx
je        short M01_L31
mov       rcx,rax
mov       r11,7FFF53F90FB8
call      qword ptr [r11]
M01_L31
 
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].Freeze(System.Action`1>>)
M02_L00
 
push      rsi
push      rbx
sub       rsp,58
vzeroupper
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+20],xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
xor       eax,eax
mov       [rsp+50],rax
mov       rbx,rcx
mov       rsi,rdx
cmp       byte ptr [rbx+1C],0
jne       short M02_L02
test      rsi,rsi
je        short M02_L01
mov       ecx,[rbx+18]
vmovdqu   xmm0,xmmword ptr [rbx+20]
vmovdqu   xmmword ptr [rsp+20],xmm0
mov       rdx,[rbx+30]
mov       [rsp+30],rdx
mov       [rsp+38],ecx
vmovdqu   xmm0,xmmword ptr [rsp+20]
vmovdqu   xmmword ptr [rsp+40],xmm0
mov       rcx,[rsp+30]
mov       [rsp+50],rcx
mov       rcx,offset System.Collections.Immutable.ImmutableDictionary`2+<>c[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].<.cctor>b__107_0(System.Collections.Generic.KeyValuePair`2>)
cmp       [rsi+18],rcx
jne       short M02_L03
mov       rcx,[rsi+8]
lea       rdx,[rsp+38]
call      qword ptr [7FFF54B9DDA0]; System.Collections.Immutable.ImmutableDictionary`2+<>c[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].<.cctor>b__107_0(System.Collections.Generic.KeyValuePair`2>)
M02_L01
 
mov       rcx,[rbx+8]
mov       rdx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFF54B9EE98]
mov       rcx,[rbx+10]
mov       rdx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFF54B9EE98]
mov       byte ptr [rbx+1C],1
M02_L02
 
add       rsp,58
pop       rbx
pop       rsi
ret
M02_L03
 
lea       rdx,[rsp+38]
mov       rcx,[rsi+8]
call      qword ptr [rsi+18]
jmp       short M02_L01
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M03_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M03_L02
test      rbx,rbx
je        short M03_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M03_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M03_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF54185B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF54185B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L01
 
call      qword ptr [7FFF54445D58]
int       3
M03_L02
 
test      rbx,rbx
je        short M03_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M03_L04
M03_L03
 
mov       rax,21F25150008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToImmutableDictionary()
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,50
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
mov       rbx,rcx
mov       r8,[rbx+280]
test      r8,r8
je        near ptr M00_L02
mov       r9,1AC50C07630
mov       rsi,[r9]
cmp       dword ptr [rsi+18],0
jne       short M00_L00
mov       rcx,r8
mov       r9,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rcx],r9
je        near ptr M00_L04
mov       rcx,r8
mov       r9,offset MT_System.Collections.Immutable.ImmutableDictionary`2+Builder[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rcx],r9
je        near ptr M00_L03
M00_L00
 
mov       r9,[rsi+8]
mov       rcx,[rsi+10]
mov       [rsp+28],r9
mov       [rsp+30],rcx
mov       dword ptr [rsp+20],2
lea       r9,[rsp+28]
lea       rcx,[rsp+40]
mov       rdx,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      qword ptr [7FFF54CDCE88]; System.Collections.Immutable.ImmutableDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, MutationInput, KeyCollisionBehavior)
mov       rdi,[rsp+40]
mov       ebp,[rsi+18]
add       ebp,[rsp+48]
test      rdi,rdi
je        near ptr M00_L05
cmp       [rsi+8],rdi
je        near ptr M00_L07
cmp       qword ptr [rdi+8],0
je        near ptr M00_L05
mov       rcx,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rdx,[rsi+10]
test      rdx,rdx
je        near ptr M00_L06
lea       rcx,[r14+10]
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,1AC50C07648
mov       rdx,[rcx]
lea       rcx,[r14+8]
call      CORINFO_HELP_ASSIGN_REF
mov       rdx,1AC50C07638
mov       rdx,[rdx]
mov       rcx,rdi
call      qword ptr [7FFF54CDEE98]; System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].Freeze(System.Action`1>>)
lea       rcx,[r14+8]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       [r14+18],ebp
M00_L01
 
mov       [rsp+38],r14
mov       rsi,[rbx+18]
mov       rdx,[rsp+38]
lea       rcx,[rsi+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rsi+8],rax
add       rsp,50
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
ret
M00_L02
 
call      qword ptr [7FFF546944C8]
mov       ecx,43
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       r14,rax
mov       ecx,1436
mov       rdx,7FFF54496D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,r14
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546942B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542F6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L03
 
cmp       [rcx],ecx
call      qword ptr [7FFF54D14888]
mov       rcx,rax
M00_L04
 
mov       r8,[rsi+10]
mov       r8,[r8+10]
mov       rdx,[rsi+10]
mov       rdx,[rdx+8]
cmp       [rcx],ecx
call      qword ptr [7FFF54CDCAC8]
mov       r14,rax
jmp       near ptr M00_L01
M00_L05
 
mov       rcx,rsi
call      qword ptr [7FFF54CDC858]
mov       r14,rax
jmp       near ptr M00_L01
M00_L06
 
mov       ecx,6DB
mov       rdx,7FFF54CE9740
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF54CDF5D0]
int       3
M00_L07
 
mov       r14,rsi
jmp       near ptr M00_L01
 
System.Collections.Immutable.ImmutableDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, MutationInput, KeyCollisionBehavior)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,128
vzeroupper
lea       rbp,[rsp+160]
vxorps    xmm4,xmm4,xmm4
mov       rax,0FFFFFFFFFFFFFF70
M01_L00
 
vmovdqa   xmmword ptr [rbp+rax-40],xmm4
vmovdqa   xmmword ptr [rbp+rax-30],xmm4
vmovdqa   xmmword ptr [rbp+rax-20],xmm4
add       rax,30
jne       short M01_L00
mov       [rbp-118],rsp
mov       [rbp-40],rdx
mov       r14,rcx
mov       rbx,rdx
mov       rdi,r8
mov       esi,[rbp+30]
mov       r15,[r9]
mov       r13,[r9+8]
test      rdi,rdi
je        near ptr M01_L48
xor       r12d,r12d
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+68]
test      r11,r11
je        near ptr M01_L43
M01_L01
 
mov       rcx,rdi
call      qword ptr [r11]
mov       [rbp-0E8],rax
test      rax,rax
je        near ptr M01_L24
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       near ptr M01_L24
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rdi,[rcx+88]
test      rdi,rdi
je        short M01_L02
jmp       short M01_L03
M01_L02
 
mov       rcx,rbx
mov       rdx,7FFF54CFB418
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rdi,rax
M01_L03
 
jmp       near ptr M01_L10
M01_L04
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+70]
test      r11,r11
je        near ptr M01_L13
M01_L05
 
lea       rdx,[rbp-50]
mov       rcx,[rbp-0E8]
call      qword ptr [r11]
mov       rax,[rbp-50]
test      rax,rax
je        near ptr M01_L38
mov       r8,[r13+8]
mov       r11,rdi
mov       rcx,r8
mov       rdx,[rbp-50]
call      qword ptr [r11]
cmp       [r15],r15b
mov       r8,r15
M01_L06
 
mov       rcx,[r8+8]
test      rcx,rcx
je        near ptr M01_L16
mov       edx,[r8+18]
cmp       eax,edx
je        near ptr M01_L40
mov       [rbp-54],eax
jle       short M01_L07
mov       r8,[r8+10]
mov       eax,[rbp-54]
jmp       short M01_L06
M01_L07
 
mov       r8,rcx
mov       eax,[rbp-54]
jmp       short M01_L06
M01_L08
 
lea       r8,[rbp-0D8]
mov       [rsp+20],r8
lea       r8,[rbp-0E0]
mov       [rsp+28],r8
lea       r8,[rbp-0D0]
mov       rcx,r15
mov       edx,[rbp-54]
mov       r9,r13
call      qword ptr [7FFF54CDEE38]; System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].SetItem(Int32, HashBucket, System.Collections.Generic.IEqualityComparer`1>, Boolean ByRef, Boolean ByRef)
mov       r15,rax
M01_L09
 
cmp       dword ptr [rbp-78],1
jne       short M01_L10
mov       rax,[rbp-0E8]
inc       r12d
M01_L10
 
mov       rax,[rbp-0E8]
lea       r8,[rax+8]
mov       ecx,[r8+8]
mov       rdx,[r8]
cmp       ecx,[rdx+44]
jne       near ptr M01_L39
M01_L11
 
mov       r10d,[r8+0C]
mov       r9,[r8]
cmp       r10d,[r9+38]
jae       near ptr M01_L42
mov       r9,[r9+10]
lea       ecx,[r10+1]
mov       [r8+0C],ecx
cmp       r10d,[r9+8]
jae       short M01_L12
mov       ecx,r10d
lea       rcx,[rcx+rcx*2]
lea       r11,[r9+rcx*8+10]
cmp       dword ptr [r11+14],0FFFFFFFF
jl        short M01_L11
mov       rdx,[r11]
mov       rcx,[r11+8]
mov       [rbp-108],rcx
mov       [rbp-100],r8
lea       rcx,[r8+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-100]
lea       rcx,[rax+20]
mov       rdx,[rbp-108]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L04
M01_L12
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L13
 
mov       rcx,rbx
mov       rdx,7FFF54CFB270
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L05
M01_L14
 
mov       [rbp-54],eax
mov       rcx,rbx
mov       rdx,7FFF54CFB430
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r8,rax
mov       r10,[rbp-0F0]
M01_L15
 
mov       r9,[rbp-0F8]
mov       [rsp+20],r9
mov       [rsp+28],r13
mov       rcx,[r13+10]
mov       [rsp+30],rcx
mov       [rsp+38],esi
lea       rcx,[rbp-78]
mov       [rsp+40],rcx
lea       rcx,[rbp-70]
lea       rdx,[rbp-90]
mov       r9,r10
call      qword ptr [7FFF54CDE178]; System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].Add(System.__Canon, System.__Canon, System.Collections.Generic.IEqualityComparer`1>, System.Collections.Generic.IEqualityComparer`1, KeyCollisionBehavior, OperationResult ByRef)
vmovdqu   xmm0,xmmword ptr [rbp-90]
vmovdqu   xmmword ptr [rbp-0D0],xmm0
mov       rcx,[rbp-80]
mov       [rbp-0C0],rcx
cmp       qword ptr [rbp-0D0],0
je        near ptr M01_L41
jmp       near ptr M01_L08
M01_L16
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-0B8],xmm0
vmovdqu   xmmword ptr [rbp-0B0],xmm0
M01_L17
 
vmovdqu   xmm0,xmmword ptr [rbp-0B8]
vmovdqu   xmmword ptr [rbp-70],xmm0
mov       rcx,[rbp-0A8]
mov       [rbp-60],rcx
mov       r10,[rbp-50]
mov       [rbp-0F0],r10
mov       r9,[rbp-48]
mov       [rbp-0F8],r9
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r8,[rcx+90]
test      r8,r8
je        near ptr M01_L14
mov       r10,[rbp-0F0]
mov       [rbp-54],eax
jmp       near ptr M01_L15
M01_L18
 
mov       rcx,rbx
mov       rdx,7FFF54CFB418
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
M01_L19
 
mov       r11,rax
mov       rcx,rdi
mov       rdx,[rbp-50]
call      qword ptr [r11]
mov       edi,eax
cmp       [r15],r15b
mov       r8,r15
M01_L20
 
cmp       qword ptr [r8+8],0
je        near ptr M01_L31
mov       ecx,[r8+18]
cmp       edi,ecx
je        near ptr M01_L33
jle       short M01_L21
mov       r8,[r8+10]
jmp       short M01_L20
M01_L21
 
mov       r8,[r8+8]
jmp       short M01_L20
M01_L22
 
lea       r8,[rbp-0D8]
mov       [rsp+20],r8
lea       r8,[rbp-0E0]
mov       [rsp+28],r8
lea       r8,[rbp-0D0]
mov       rcx,r15
mov       edx,edi
mov       r9,r13
call      qword ptr [7FFF54CDEE38]; System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].SetItem(Int32, HashBucket, System.Collections.Generic.IEqualityComparer`1>, Boolean ByRef, Boolean ByRef)
mov       r15,rax
M01_L23
 
cmp       dword ptr [rbp-78],1
jne       short M01_L24
mov       rax,[rbp-0E8]
inc       r12d
M01_L24
 
mov       rax,[rbp-0E8]
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       near ptr M01_L36
lea       rcx,[rax+8]
mov       rdi,rcx
mov       ecx,[rdi+8]
mov       rdx,[rdi]
cmp       ecx,[rdx+44]
jne       near ptr M01_L39
M01_L25
 
mov       r10d,[rdi+0C]
mov       r8,[rdi]
cmp       r10d,[r8+38]
jae       near ptr M01_L35
mov       r9,[r8+10]
lea       ecx,[r10+1]
mov       [rdi+0C],ecx
cmp       r10d,[r9+8]
jae       near ptr M01_L12
mov       ecx,r10d
lea       rcx,[rcx+rcx*2]
lea       r11,[r9+rcx*8+10]
cmp       dword ptr [r11+14],0FFFFFFFF
jl        short M01_L25
mov       rdx,[r11]
mov       rcx,[r11+8]
mov       [rbp-108],rcx
lea       rcx,[rdi+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,[rbp-108]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
M01_L26
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+70]
test      r11,r11
je        near ptr M01_L30
M01_L27
 
lea       rdx,[rbp-50]
mov       rcx,[rbp-0E8]
call      qword ptr [r11]
mov       rax,[rbp-50]
test      rax,rax
je        near ptr M01_L38
mov       r8,[r13+8]
mov       rdi,r8
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rax,[rcx+88]
test      rax,rax
je        near ptr M01_L18
jmp       near ptr M01_L19
M01_L28
 
mov       rcx,rbx
mov       rdx,7FFF54CFB430
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r8,rax
mov       r10,r8
mov       rax,[rbp-0F0]
M01_L29
 
mov       r8,[rbp-0F8]
mov       [rsp+20],r8
mov       [rsp+28],r13
mov       r8,[r13+10]
mov       [rsp+30],r8
mov       [rsp+38],esi
lea       r8,[rbp-78]
mov       [rsp+40],r8
mov       r8,r10
lea       rcx,[rbp-70]
lea       rdx,[rbp-90]
mov       r9,rax
call      qword ptr [7FFF54CDE178]; System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].Add(System.__Canon, System.__Canon, System.Collections.Generic.IEqualityComparer`1>, System.Collections.Generic.IEqualityComparer`1, KeyCollisionBehavior, OperationResult ByRef)
vmovdqu   xmm0,xmmword ptr [rbp-90]
vmovdqu   xmmword ptr [rbp-0D0],xmm0
mov       r8,[rbp-80]
mov       [rbp-0C0],r8
cmp       qword ptr [rbp-0D0],0
je        near ptr M01_L34
mov       rax,[rbp-0E8]
jmp       near ptr M01_L22
M01_L30
 
mov       rcx,rbx
mov       rdx,7FFF54CFB270
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L27
M01_L31
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-0B8],xmm0
vmovdqu   xmmword ptr [rbp-0B0],xmm0
M01_L32
 
vmovdqu   xmm0,xmmword ptr [rbp-0B8]
vmovdqu   xmmword ptr [rbp-70],xmm0
mov       rcx,[rbp-0A8]
mov       [rbp-60],rcx
mov       r10,[rbp-50]
mov       [rbp-0F0],r10
mov       r9,[rbp-48]
mov       [rbp-0F8],r9
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r10,[rcx+90]
test      r10,r10
je        near ptr M01_L28
mov       rax,[rbp-0F0]
jmp       near ptr M01_L29
M01_L33
 
mov       rax,[rbp-0E8]
vmovdqu   xmm0,xmmword ptr [r8+20]
vmovdqu   xmmword ptr [rbp-0B8],xmm0
mov       rcx,[r8+30]
mov       [rbp-0A8],rcx
jmp       short M01_L32
M01_L34
 
lea       r8,[rbp-0D8]
mov       rcx,r15
mov       edx,edi
call      qword ptr [7FFF54CDEF88]
mov       r15,rax
jmp       near ptr M01_L23
M01_L35
 
mov       rax,[rbp-0E8]
mov       ecx,[r8+38]
inc       ecx
mov       [rdi+0C],ecx
xor       ecx,ecx
mov       [rdi+18],rcx
mov       [rdi+20],rcx
jmp       short M01_L37
M01_L36
 
mov       rcx,rax
mov       r11,7FFF53FC19A0
call      qword ptr [r11]
mov       ecx,eax
mov       rax,[rbp-0E8]
M01_L37
 
test      ecx,ecx
jne       near ptr M01_L26
mov       rax,[rbp-0E8]
jmp       near ptr M01_L44
M01_L38
 
mov       ecx,717
mov       rdx,7FFF54CE9740
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF54CDF5D0]
int       3
M01_L39
 
call      qword ptr [7FFF54475E00]
int       3
M01_L40
 
vmovdqu   xmm0,xmmword ptr [r8+20]
vmovdqu   xmmword ptr [rbp-0B8],xmm0
mov       rcx,[r8+30]
mov       [rbp-0A8],rcx
jmp       near ptr M01_L17
M01_L41
 
lea       r8,[rbp-0D8]
mov       rcx,r15
mov       edx,[rbp-54]
call      qword ptr [7FFF54CDEF88]
mov       r15,rax
jmp       near ptr M01_L09
M01_L42
 
mov       rax,[rbp-0E8]
mov       ecx,[r9+38]
inc       ecx
mov       [r8+0C],ecx
xor       ecx,ecx
mov       [r8+18],rcx
mov       [r8+20],rcx
jmp       short M01_L44
M01_L43
 
mov       rcx,rbx
mov       rdx,7FFF54CFB250
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L01
M01_L44
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
je        short M01_L45
mov       rcx,rax
mov       r11,7FFF53FC19A8
call      qword ptr [r11]
M01_L45
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-0A0],xmm0
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rdx,[rcx+50]
test      rdx,rdx
je        short M01_L46
jmp       short M01_L47
M01_L46
 
mov       rcx,rbx
mov       rdx,7FFF54CF9D38
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rdx,rax
M01_L47
 
lea       rcx,[rbp-0A0]
mov       r8,r15
mov       r9d,r12d
call      qword ptr [7FFF54CDF9A8]; System.Collections.Immutable.ImmutableDictionary`2+MutationResult[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Immutable.SortedInt32KeyNode`1>, Int32)
mov       rdx,[rbp-0A0]
mov       rcx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       eax,[rbp-98]
mov       [r14+8],eax
mov       rax,r14
add       rsp,128
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L48
 
mov       ecx,40B
mov       rdx,7FFF54CE9740
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF54CDF5D0]
int       3
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
mov       rbp,[rcx+48]
mov       [rsp+48],rbp
lea       rbp,[rbp+160]
cmp       qword ptr [rbp-0E8],0
je        short M01_L49
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-0E8]
cmp       [rax],rcx
je        short M01_L49
mov       rcx,rax
mov       r11,7FFF53FC19A8
call      qword ptr [r11]
M01_L49
 
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].Freeze(System.Action`1>>)
M02_L00
 
push      rsi
push      rbx
sub       rsp,58
vzeroupper
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+20],xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
xor       eax,eax
mov       [rsp+50],rax
mov       rbx,rcx
mov       rsi,rdx
cmp       byte ptr [rbx+1C],0
jne       short M02_L02
test      rsi,rsi
je        short M02_L01
mov       ecx,[rbx+18]
vmovdqu   xmm0,xmmword ptr [rbx+20]
vmovdqu   xmmword ptr [rsp+20],xmm0
mov       rdx,[rbx+30]
mov       [rsp+30],rdx
mov       [rsp+38],ecx
vmovdqu   xmm0,xmmword ptr [rsp+20]
vmovdqu   xmmword ptr [rsp+40],xmm0
mov       rcx,[rsp+30]
mov       [rsp+50],rcx
mov       rcx,offset System.Collections.Immutable.ImmutableDictionary`2+<>c[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].<.cctor>b__107_0(System.Collections.Generic.KeyValuePair`2>)
cmp       [rsi+18],rcx
jne       short M02_L03
mov       rcx,[rsi+8]
lea       rdx,[rsp+38]
call      qword ptr [7FFF54CDDDA0]; System.Collections.Immutable.ImmutableDictionary`2+<>c[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].<.cctor>b__107_0(System.Collections.Generic.KeyValuePair`2>)
M02_L01
 
mov       rcx,[rbx+8]
mov       rdx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFF54CDEE98]
mov       rcx,[rbx+10]
mov       rdx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFF54CDEE98]
mov       byte ptr [rbx+1C],1
M02_L02
 
add       rsp,58
pop       rbx
pop       rsi
ret
M02_L03
 
lea       rdx,[rsp+38]
mov       rcx,[rsi+8]
call      qword ptr [rsi+18]
jmp       short M02_L01
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M03_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M03_L02
test      rbx,rbx
je        short M03_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M03_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M03_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF541B5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF541B5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L01
 
call      qword ptr [7FFF54475D58]
int       3
M03_L02
 
test      rbx,rbx
je        short M03_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M03_L04
M03_L03
 
mov       rax,1ECDA920008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToImmutableDictionary()
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,50
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
mov       rbx,rcx
mov       r8,[rbx+280]
test      r8,r8
je        near ptr M00_L02
mov       r9,211BE007630
mov       rsi,[r9]
cmp       dword ptr [rsi+18],0
jne       short M00_L00
mov       rcx,r8
mov       r9,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rcx],r9
je        near ptr M00_L04
mov       rcx,r8
mov       r9,offset MT_System.Collections.Immutable.ImmutableDictionary`2+Builder[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rcx],r9
je        near ptr M00_L03
M00_L00
 
mov       r9,[rsi+8]
mov       rcx,[rsi+10]
mov       [rsp+28],r9
mov       [rsp+30],rcx
mov       dword ptr [rsp+20],2
lea       r9,[rsp+28]
lea       rcx,[rsp+40]
mov       rdx,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      qword ptr [7FFF54DBEFB8]; System.Collections.Immutable.ImmutableDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, MutationInput, KeyCollisionBehavior)
mov       rdi,[rsp+40]
mov       ebp,[rsi+18]
add       ebp,[rsp+48]
test      rdi,rdi
je        near ptr M00_L05
cmp       [rsi+8],rdi
je        near ptr M00_L07
cmp       qword ptr [rdi+8],0
je        near ptr M00_L05
mov       rcx,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rdx,[rsi+10]
test      rdx,rdx
je        near ptr M00_L06
lea       rcx,[r14+10]
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,211BE007650
mov       rdx,[rcx]
lea       rcx,[r14+8]
call      CORINFO_HELP_ASSIGN_REF
mov       rdx,211BE007638
mov       rdx,[rdx]
mov       rcx,rdi
call      qword ptr [7FFF54E75008]; System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].Freeze(System.Action`1>>)
lea       rcx,[r14+8]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       [r14+18],ebp
M00_L01
 
mov       [rsp+38],r14
mov       rsi,[rbx+18]
mov       rdx,[rsp+38]
lea       rcx,[rsi+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rsi+8],rax
add       rsp,50
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
ret
M00_L02
 
call      qword ptr [7FFF546844C8]
mov       ecx,43
mov       rdx,7FFF545FA408
call      CORINFO_HELP_STRCNS
mov       r14,rax
mov       ecx,1436
mov       rdx,7FFF54486D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,r14
call      qword ptr [7FFF540F6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545FA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540F6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546842B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542E6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L03
 
cmp       [rcx],ecx
call      qword ptr [7FFF54E765F8]
mov       rcx,rax
M00_L04
 
mov       r8,[rsi+10]
mov       r8,[r8+10]
mov       rdx,[rsi+10]
mov       rdx,[rdx+8]
cmp       [rcx],ecx
call      qword ptr [7FFF54DBEBF8]
mov       r14,rax
jmp       near ptr M00_L01
M00_L05
 
mov       rcx,rsi
call      qword ptr [7FFF54DBE988]
mov       r14,rax
jmp       near ptr M00_L01
M00_L06
 
mov       ecx,6DB
mov       rdx,7FFF54DD5748
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF54E75740]
int       3
M00_L07
 
mov       r14,rsi
jmp       near ptr M00_L01
 
System.Collections.Immutable.ImmutableDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, MutationInput, KeyCollisionBehavior)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,128
vzeroupper
lea       rbp,[rsp+160]
vxorps    xmm4,xmm4,xmm4
mov       rax,0FFFFFFFFFFFFFF70
M01_L00
 
vmovdqa   xmmword ptr [rbp+rax-40],xmm4
vmovdqa   xmmword ptr [rbp+rax-30],xmm4
vmovdqa   xmmword ptr [rbp+rax-20],xmm4
add       rax,30
jne       short M01_L00
mov       [rbp-118],rsp
mov       [rbp-40],rdx
mov       rdi,rcx
mov       rbx,rdx
mov       r14,r8
mov       esi,[rbp+30]
mov       r15,[r9]
mov       r13,[r9+8]
test      r14,r14
je        near ptr M01_L29
xor       r12d,r12d
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+68]
test      r11,r11
je        near ptr M01_L24
M01_L01
 
mov       rcx,r14
call      qword ptr [r11]
mov       [rbp-0E8],rax
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r14,[rcx+88]
test      r14,r14
je        short M01_L03
M01_L02
 
jmp       near ptr M01_L11
M01_L03
 
mov       rcx,rbx
mov       rdx,7FFF54E6B418
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r14,rax
jmp       short M01_L02
M01_L04
 
mov       rcx,rbx
mov       rdx,7FFF54E6B270
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L06
M01_L05
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+70]
test      r11,r11
je        short M01_L04
M01_L06
 
lea       rdx,[rbp-50]
mov       rcx,[rbp-0E8]
call      qword ptr [r11]
mov       rcx,[rbp-50]
test      rcx,rcx
je        near ptr M01_L15
mov       rcx,[r13+8]
mov       r11,r14
mov       rdx,[rbp-50]
call      qword ptr [r11]
mov       [rbp-54],eax
cmp       [r15],r15b
mov       r8,r15
M01_L07
 
mov       rcx,[r8+8]
test      rcx,rcx
je        near ptr M01_L20
mov       edx,[r8+18]
cmp       eax,edx
je        near ptr M01_L14
jle       short M01_L08
mov       r8,[r8+10]
mov       eax,[rbp-54]
jmp       short M01_L07
M01_L08
 
mov       r8,rcx
mov       eax,[rbp-54]
jmp       short M01_L07
M01_L09
 
lea       r8,[rbp-0D8]
mov       [rsp+20],r8
lea       r8,[rbp-0E0]
mov       [rsp+28],r8
lea       r8,[rbp-0D0]
mov       rcx,r15
mov       edx,[rbp-54]
mov       r9,r13
call      qword ptr [7FFF54E74FA8]; System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].SetItem(Int32, HashBucket, System.Collections.Generic.IEqualityComparer`1>, Boolean ByRef, Boolean ByRef)
mov       r15,rax
M01_L10
 
cmp       dword ptr [rbp-78],1
jne       short M01_L11
mov       rax,[rbp-0E8]
inc       r12d
M01_L11
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-0E8]
cmp       [rax],rcx
jne       near ptr M01_L18
lea       r8,[rax+8]
mov       [rbp-100],r8
mov       ecx,[r8+8]
mov       rdx,[r8]
cmp       ecx,[rdx+44]
jne       near ptr M01_L17
M01_L12
 
mov       ecx,[r8+0C]
mov       r10,[r8]
cmp       ecx,[r10+38]
jae       near ptr M01_L19
mov       rdx,[r10+10]
lea       r10d,[rcx+1]
mov       [r8+0C],r10d
cmp       ecx,[rdx+8]
jae       short M01_L13
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L12
mov       rdx,[rcx]
mov       r10,[rcx+8]
mov       [rbp-108],r10
lea       rcx,[r8+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-100]
lea       rcx,[rax+20]
mov       rdx,[rbp-108]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L05
M01_L13
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L14
 
vmovdqu   xmm0,xmmword ptr [r8+20]
vmovdqu   xmmword ptr [rbp-0B8],xmm0
mov       rcx,[r8+30]
mov       [rbp-0A8],rcx
jmp       near ptr M01_L21
M01_L15
 
mov       ecx,717
mov       rdx,7FFF54DD5748
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF54E75740]
int       3
M01_L16
 
mov       eax,[rbp-54]
lea       r8,[rbp-0D8]
mov       rcx,r15
mov       edx,eax
call      qword ptr [7FFF54E750F8]
mov       r15,rax
jmp       near ptr M01_L10
M01_L17
 
call      qword ptr [7FFF54465E00]
int       3
M01_L18
 
mov       rcx,rax
mov       r11,7FFF53FB1BC0
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L05
mov       rax,[rbp-0E8]
jmp       near ptr M01_L25
M01_L19
 
mov       rax,[rbp-0E8]
mov       ecx,[r10+38]
inc       ecx
mov       [r8+0C],ecx
xor       ecx,ecx
mov       [r8+18],rcx
mov       [r8+20],rcx
jmp       near ptr M01_L25
M01_L20
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-0B8],xmm0
vmovdqu   xmmword ptr [rbp-0B0],xmm0
M01_L21
 
vmovdqu   xmm0,xmmword ptr [rbp-0B8]
vmovdqu   xmmword ptr [rbp-70],xmm0
mov       rcx,[rbp-0A8]
mov       [rbp-60],rcx
mov       r8,[rbp-50]
mov       [rbp-0F0],r8
mov       r10,[rbp-48]
mov       [rbp-0F8],r10
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r9,[rcx+90]
test      r9,r9
je        short M01_L23
M01_L22
 
mov       r10,[rbp-0F8]
mov       [rsp+20],r10
mov       [rsp+28],r13
mov       rcx,[r13+10]
mov       [rsp+30],rcx
mov       [rsp+38],esi
lea       rcx,[rbp-78]
mov       [rsp+40],rcx
mov       r8,r9
lea       rcx,[rbp-70]
lea       rdx,[rbp-90]
mov       r9,[rbp-0F0]
call      qword ptr [7FFF54E742E8]; System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].Add(System.__Canon, System.__Canon, System.Collections.Generic.IEqualityComparer`1>, System.Collections.Generic.IEqualityComparer`1, KeyCollisionBehavior, OperationResult ByRef)
vmovdqu   xmm0,xmmword ptr [rbp-90]
vmovdqu   xmmword ptr [rbp-0D0],xmm0
mov       rcx,[rbp-80]
mov       [rbp-0C0],rcx
cmp       qword ptr [rbp-0D0],0
je        near ptr M01_L16
jmp       near ptr M01_L09
M01_L23
 
mov       rcx,rbx
mov       rdx,7FFF54E6B430
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r8,rax
mov       r9,r8
jmp       near ptr M01_L22
M01_L24
 
mov       rcx,rbx
mov       rdx,7FFF54E6B250
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L01
M01_L25
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       near ptr M01_L30
M01_L26
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-0A0],xmm0
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rdx,[rcx+50]
test      rdx,rdx
je        short M01_L28
M01_L27
 
lea       rcx,[rbp-0A0]
mov       r8,r15
mov       r9d,r12d
call      qword ptr [7FFF54E75B18]; System.Collections.Immutable.ImmutableDictionary`2+MutationResult[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Immutable.SortedInt32KeyNode`1>, Int32)
mov       rdx,[rbp-0A0]
mov       rcx,rdi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       eax,[rbp-98]
mov       [rdi+8],eax
mov       rax,rdi
add       rsp,128
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L28
 
mov       rcx,rbx
mov       rdx,7FFF54E69D38
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rdx,rax
jmp       short M01_L27
M01_L29
 
mov       ecx,40B
mov       rdx,7FFF54DD5748
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF54E75740]
int       3
M01_L30
 
mov       rcx,rax
mov       r11,7FFF53FB1BC8
call      qword ptr [r11]
jmp       near ptr M01_L26
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
mov       rbp,[rcx+48]
mov       [rsp+48],rbp
lea       rbp,[rbp+160]
cmp       qword ptr [rbp-0E8],0
je        short M01_L31
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-0E8]
cmp       [rax],rcx
je        short M01_L31
mov       rcx,rax
mov       r11,7FFF53FB1BC8
call      qword ptr [r11]
M01_L31
 
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].Freeze(System.Action`1>>)
M02_L00
 
push      rsi
push      rbx
sub       rsp,58
vzeroupper
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+20],xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
xor       eax,eax
mov       [rsp+50],rax
mov       rbx,rcx
mov       rsi,rdx
cmp       byte ptr [rbx+1C],0
jne       short M02_L02
test      rsi,rsi
je        short M02_L01
mov       ecx,[rbx+18]
vmovdqu   xmm0,xmmword ptr [rbx+20]
vmovdqu   xmmword ptr [rsp+20],xmm0
mov       rdx,[rbx+30]
mov       [rsp+30],rdx
mov       [rsp+38],ecx
vmovdqu   xmm0,xmmword ptr [rsp+20]
vmovdqu   xmmword ptr [rsp+40],xmm0
mov       rcx,[rsp+30]
mov       [rsp+50],rcx
mov       rcx,offset System.Collections.Immutable.ImmutableDictionary`2+<>c[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].<.cctor>b__107_0(System.Collections.Generic.KeyValuePair`2>)
cmp       [rsi+18],rcx
jne       short M02_L03
mov       rcx,[rsi+8]
lea       rdx,[rsp+38]
call      qword ptr [7FFF54DBFED0]; System.Collections.Immutable.ImmutableDictionary`2+<>c[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].<.cctor>b__107_0(System.Collections.Generic.KeyValuePair`2>)
M02_L01
 
mov       rcx,[rbx+8]
mov       rdx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFF54E75008]
mov       rcx,[rbx+10]
mov       rdx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFF54E75008]
mov       byte ptr [rbx+1C],1
M02_L02
 
add       rsp,58
pop       rbx
pop       rsi
ret
M02_L03
 
lea       rdx,[rsp+38]
mov       rcx,[rsi+8]
call      qword ptr [rsi+18]
jmp       short M02_L01
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M03_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M03_L02
test      rbx,rbx
je        short M03_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M03_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M03_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF541A5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF541A5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L01
 
call      qword ptr [7FFF54465D58]
int       3
M03_L02
 
test      rbx,rbx
je        short M03_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M03_L04
M03_L03
 
mov       rax,25247D20008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToReadOnlyCollection()
push      rsi
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rdx,[rbx+280]
test      rdx,rdx
je        short M00_L00
mov       rcx,1C5C6401FD8
mov       rcx,[rcx]
xor       r8d,r8d
xor       r9d,r9d
call      qword ptr [7FFF54BA6B50]; System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, Boolean, Boolean)
mov       [rsp+20],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rsi
ret
M00_L00
 
call      qword ptr [7FFF546744C8]
mov       ecx,43
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54476D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546742B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542D6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, Boolean, Boolean)
push      rbp
push      rsi
push      rbx
sub       rsp,80
lea       rbp,[rsp+90]
xor       eax,eax
mov       [rbp-48],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
vmovdqa   xmmword ptr [rbp-30],xmm4
mov       [rbp-58],rsp
mov       [rbp-18],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       esi,r8d
cmp       [rcx],ecx
test      rbx,rbx
je        near ptr M01_L09
mov       r8,[rcx+8]
cmp       qword ptr [r8+18],0
jne       short M01_L00
test      r9b,r9b
jne       short M01_L00
movzx     r8d,sil
mov       rdx,rbx
call      qword ptr [7FFF54BA6B80]; System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FillFromEmpty(System.Collections.Generic.IEnumerable`1>, Boolean)
nop
add       rsp,80
pop       rbx
pop       rsi
pop       rbp
ret
M01_L00
 
mov       rdx,[rcx+8]
mov       [rbp-48],rdx
mov       edx,[rcx+20]
mov       [rbp-1C],edx
mov       rdx,[rcx]
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+38]
test      r11,r11
je        short M01_L01
jmp       short M01_L02
M01_L01
 
mov       rcx,rdx
mov       rdx,7FFF54BC5918
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L02
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-50],rax
jmp       near ptr M01_L08
M01_L03
 
mov       rcx,[rbp+10]
mov       rdx,[rcx]
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+40]
test      r11,r11
je        short M01_L04
jmp       short M01_L05
M01_L04
 
mov       rcx,rdx
mov       rdx,7FFF54BC5938
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L05
 
lea       rdx,[rbp-30]
mov       rcx,[rbp-50]
call      qword ptr [r11]
xor       r9d,r9d
mov       [rbp-40],r9d
test      sil,sil
jne       short M01_L06
mov       rdx,[rbp-30]
mov       rcx,[rbp+10]
mov       r9,[rcx+18]
mov       [rsp+20],r9
lea       r9,[rbp-38]
mov       [rsp+28],r9
mov       r9,[rcx+10]
mov       rcx,[rbp-48]
mov       r8,[rbp-28]
cmp       [rcx],ecx
call      qword ptr [7FFF54BAC1F8]
jmp       short M01_L07
M01_L06
 
mov       rdx,[rbp-30]
mov       rcx,[rbp+10]
mov       r9,[rcx+18]
mov       [rsp+20],r9
lea       r9,[rbp-40]
mov       [rsp+28],r9
lea       r9,[rbp-38]
mov       [rsp+30],r9
mov       r9,[rcx+10]
mov       rcx,[rbp-48]
mov       r8,[rbp-28]
cmp       [rcx],ecx
call      qword ptr [7FFF54BAC210]
M01_L07
 
cmp       byte ptr [rbp-38],0
je        short M01_L08
mov       [rbp-48],rax
cmp       byte ptr [rbp-40],0
jne       short M01_L08
mov       ecx,[rbp-1C]
inc       ecx
mov       [rbp-1C],ecx
M01_L08
 
mov       rcx,[rbp-50]
mov       r11,7FFF53FA1048
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L03
mov       rcx,rsp
call      M01_L10
nop
mov       rcx,[rbp+10]
mov       rdx,[rbp-48]
mov       r8d,[rbp-1C]
call      qword ptr [7FFF54BA6B68]
nop
add       rsp,80
pop       rbx
pop       rsi
pop       rbp
ret
M01_L09
 
mov       ecx,40B
mov       rdx,7FFF54BB35C8
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF54BACA80]
int       3
M01_L10
 
push      rbp
push      rsi
push      rbx
sub       rsp,40
mov       rbp,[rcx+38]
mov       [rsp+38],rbp
lea       rbp,[rbp+90]
cmp       qword ptr [rbp-50],0
je        short M01_L11
mov       rcx,[rbp-50]
mov       r11,7FFF53FA1050
call      qword ptr [r11]
M01_L11
 
nop
add       rsp,40
pop       rbx
pop       rsi
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF54195B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF54195B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFF54455D58]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,20654220008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToReadOnlyCollection()
push      rsi
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rdx,[rbx+280]
test      rdx,rdx
je        short M00_L00
mov       rcx,24024801FD8
mov       rcx,[rcx]
xor       r8d,r8d
xor       r9d,r9d
call      qword ptr [7FFF54BACD50]; System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, Boolean, Boolean)
mov       [rsp+20],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rsi
ret
M00_L00
 
call      qword ptr [7FFF546744C8]
mov       ecx,43
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54476D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546742B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542D6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, Boolean, Boolean)
push      rbp
push      rsi
push      rbx
sub       rsp,80
lea       rbp,[rsp+90]
xor       eax,eax
mov       [rbp-48],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
vmovdqa   xmmword ptr [rbp-30],xmm4
mov       [rbp-58],rsp
mov       [rbp-18],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       esi,r8d
cmp       [rcx],ecx
test      rbx,rbx
je        near ptr M01_L09
mov       r8,[rcx+8]
cmp       qword ptr [r8+18],0
jne       short M01_L00
test      r9b,r9b
jne       short M01_L00
movzx     r8d,sil
mov       rdx,rbx
call      qword ptr [7FFF54BACD80]; System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FillFromEmpty(System.Collections.Generic.IEnumerable`1>, Boolean)
nop
add       rsp,80
pop       rbx
pop       rsi
pop       rbp
ret
M01_L00
 
mov       rdx,[rcx+8]
mov       [rbp-48],rdx
mov       edx,[rcx+20]
mov       [rbp-1C],edx
mov       rdx,[rcx]
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+38]
test      r11,r11
je        short M01_L01
jmp       short M01_L02
M01_L01
 
mov       rcx,rdx
mov       rdx,7FFF54BC7C30
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L02
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-50],rax
jmp       near ptr M01_L08
M01_L03
 
mov       rcx,[rbp+10]
mov       rdx,[rcx]
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+40]
test      r11,r11
je        short M01_L04
jmp       short M01_L05
M01_L04
 
mov       rcx,rdx
mov       rdx,7FFF54BC7C50
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L05
 
lea       rdx,[rbp-30]
mov       rcx,[rbp-50]
call      qword ptr [r11]
xor       r9d,r9d
mov       [rbp-40],r9d
test      sil,sil
jne       short M01_L06
mov       rdx,[rbp-30]
mov       rcx,[rbp+10]
mov       r9,[rcx+18]
mov       [rsp+20],r9
lea       r9,[rbp-38]
mov       [rsp+28],r9
mov       r9,[rcx+10]
mov       rcx,[rbp-48]
mov       r8,[rbp-28]
cmp       [rcx],ecx
call      qword ptr [7FFF54BAE118]
jmp       short M01_L07
M01_L06
 
mov       rdx,[rbp-30]
mov       rcx,[rbp+10]
mov       r9,[rcx+18]
mov       [rsp+20],r9
lea       r9,[rbp-40]
mov       [rsp+28],r9
lea       r9,[rbp-38]
mov       [rsp+30],r9
mov       r9,[rcx+10]
mov       rcx,[rbp-48]
mov       r8,[rbp-28]
cmp       [rcx],ecx
call      qword ptr [7FFF54BAE130]
M01_L07
 
cmp       byte ptr [rbp-38],0
je        short M01_L08
mov       [rbp-48],rax
cmp       byte ptr [rbp-40],0
jne       short M01_L08
mov       ecx,[rbp-1C]
inc       ecx
mov       [rbp-1C],ecx
M01_L08
 
mov       rcx,[rbp-50]
mov       r11,7FFF53FA1048
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L03
mov       rcx,rsp
call      M01_L10
nop
mov       rcx,[rbp+10]
mov       rdx,[rbp-48]
mov       r8d,[rbp-1C]
call      qword ptr [7FFF54BACD68]
nop
add       rsp,80
pop       rbx
pop       rsi
pop       rbp
ret
M01_L09
 
mov       ecx,40B
mov       rdx,7FFF54BB72A0
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF54BAE9A0]
int       3
M01_L10
 
push      rbp
push      rsi
push      rbx
sub       rsp,40
mov       rbp,[rcx+38]
mov       [rsp+38],rbp
lea       rbp,[rbp+90]
cmp       qword ptr [rbp-50],0
je        short M01_L11
mov       rcx,[rbp-50]
mov       r11,7FFF53FA1050
call      qword ptr [r11]
M01_L11
 
nop
add       rsp,40
pop       rbx
pop       rsi
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF54195B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF54195B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFF54455D58]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,280B66C0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToReadOnlyCollection()
push      rsi
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rdx,[rbx+280]
test      rdx,rdx
je        short M00_L00
mov       rcx,1E04D801FD8
mov       rcx,[rcx]
xor       r8d,r8d
xor       r9d,r9d
call      qword ptr [7FFF54B9CD50]; System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, Boolean, Boolean)
mov       [rsp+20],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rsi
ret
M00_L00
 
call      qword ptr [7FFF546644C8]
mov       ecx,43
mov       rdx,7FFF545DA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54466D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540D6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545DA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540D6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546642B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542C6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, Boolean, Boolean)
push      rbp
push      rsi
push      rbx
sub       rsp,80
lea       rbp,[rsp+90]
xor       eax,eax
mov       [rbp-48],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
vmovdqa   xmmword ptr [rbp-30],xmm4
mov       [rbp-58],rsp
mov       [rbp-18],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       esi,r8d
cmp       [rcx],ecx
test      rbx,rbx
je        near ptr M01_L09
mov       r8,[rcx+8]
cmp       qword ptr [r8+18],0
jne       short M01_L00
test      r9b,r9b
jne       short M01_L00
movzx     r8d,sil
mov       rdx,rbx
call      qword ptr [7FFF54B9CD80]; System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FillFromEmpty(System.Collections.Generic.IEnumerable`1>, Boolean)
nop
add       rsp,80
pop       rbx
pop       rsi
pop       rbp
ret
M01_L00
 
mov       rdx,[rcx+8]
mov       [rbp-48],rdx
mov       edx,[rcx+20]
mov       [rbp-1C],edx
mov       rdx,[rcx]
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+38]
test      r11,r11
je        short M01_L01
jmp       short M01_L02
M01_L01
 
mov       rcx,rdx
mov       rdx,7FFF54BB7C30
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L02
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-50],rax
jmp       near ptr M01_L08
M01_L03
 
mov       rcx,[rbp+10]
mov       rdx,[rcx]
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+40]
test      r11,r11
je        short M01_L04
jmp       short M01_L05
M01_L04
 
mov       rcx,rdx
mov       rdx,7FFF54BB7C50
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L05
 
lea       rdx,[rbp-30]
mov       rcx,[rbp-50]
call      qword ptr [r11]
xor       r9d,r9d
mov       [rbp-40],r9d
test      sil,sil
jne       short M01_L06
mov       rdx,[rbp-30]
mov       rcx,[rbp+10]
mov       r9,[rcx+18]
mov       [rsp+20],r9
lea       r9,[rbp-38]
mov       [rsp+28],r9
mov       r9,[rcx+10]
mov       rcx,[rbp-48]
mov       r8,[rbp-28]
cmp       [rcx],ecx
call      qword ptr [7FFF54B9E118]
jmp       short M01_L07
M01_L06
 
mov       rdx,[rbp-30]
mov       rcx,[rbp+10]
mov       r9,[rcx+18]
mov       [rsp+20],r9
lea       r9,[rbp-40]
mov       [rsp+28],r9
lea       r9,[rbp-38]
mov       [rsp+30],r9
mov       r9,[rcx+10]
mov       rcx,[rbp-48]
mov       r8,[rbp-28]
cmp       [rcx],ecx
call      qword ptr [7FFF54B9E130]
M01_L07
 
cmp       byte ptr [rbp-38],0
je        short M01_L08
mov       [rbp-48],rax
cmp       byte ptr [rbp-40],0
jne       short M01_L08
mov       ecx,[rbp-1C]
inc       ecx
mov       [rbp-1C],ecx
M01_L08
 
mov       rcx,[rbp-50]
mov       r11,7FFF53F91048
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L03
mov       rcx,rsp
call      M01_L10
nop
mov       rcx,[rbp+10]
mov       rdx,[rbp-48]
mov       r8d,[rbp-1C]
call      qword ptr [7FFF54B9CD68]
nop
add       rsp,80
pop       rbx
pop       rsi
pop       rbp
ret
M01_L09
 
mov       ecx,40B
mov       rdx,7FFF54BA72A0
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF54B9E9A0]
int       3
M01_L10
 
push      rbp
push      rsi
push      rbx
sub       rsp,40
mov       rbp,[rcx+38]
mov       [rsp+38],rbp
lea       rbp,[rbp+90]
cmp       qword ptr [rbp-50],0
je        short M01_L11
mov       rcx,[rbp-50]
mov       r11,7FFF53F91050
call      qword ptr [r11]
M01_L11
 
nop
add       rsp,40
pop       rbx
pop       rsi
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF54185B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF54185B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFF54445D58]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,220DB500008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToReadOnlyCollection()
push      rsi
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rdx,[rbx+280]
test      rdx,rdx
je        short M00_L00
mov       rcx,215D1801FD8
mov       rcx,[rcx]
xor       r8d,r8d
xor       r9d,r9d
call      qword ptr [7FFF54BACD50]; System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, Boolean, Boolean)
mov       [rsp+20],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rsi
ret
M00_L00
 
call      qword ptr [7FFF546744C8]
mov       ecx,43
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54476D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546742B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542D6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, Boolean, Boolean)
push      rbp
push      rsi
push      rbx
sub       rsp,80
lea       rbp,[rsp+90]
xor       eax,eax
mov       [rbp-48],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
vmovdqa   xmmword ptr [rbp-30],xmm4
mov       [rbp-58],rsp
mov       [rbp-18],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       esi,r8d
cmp       [rcx],ecx
test      rbx,rbx
je        near ptr M01_L09
mov       r8,[rcx+8]
cmp       qword ptr [r8+18],0
jne       short M01_L00
test      r9b,r9b
jne       short M01_L00
movzx     r8d,sil
mov       rdx,rbx
call      qword ptr [7FFF54BACD80]; System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FillFromEmpty(System.Collections.Generic.IEnumerable`1>, Boolean)
nop
add       rsp,80
pop       rbx
pop       rsi
pop       rbp
ret
M01_L00
 
mov       rdx,[rcx+8]
mov       [rbp-48],rdx
mov       edx,[rcx+20]
mov       [rbp-1C],edx
mov       rdx,[rcx]
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+38]
test      r11,r11
je        short M01_L01
jmp       short M01_L02
M01_L01
 
mov       rcx,rdx
mov       rdx,7FFF54BC7C30
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L02
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-50],rax
jmp       near ptr M01_L08
M01_L03
 
mov       rcx,[rbp+10]
mov       rdx,[rcx]
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+40]
test      r11,r11
je        short M01_L04
jmp       short M01_L05
M01_L04
 
mov       rcx,rdx
mov       rdx,7FFF54BC7C50
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L05
 
lea       rdx,[rbp-30]
mov       rcx,[rbp-50]
call      qword ptr [r11]
xor       r9d,r9d
mov       [rbp-40],r9d
test      sil,sil
jne       short M01_L06
mov       rdx,[rbp-30]
mov       rcx,[rbp+10]
mov       r9,[rcx+18]
mov       [rsp+20],r9
lea       r9,[rbp-38]
mov       [rsp+28],r9
mov       r9,[rcx+10]
mov       rcx,[rbp-48]
mov       r8,[rbp-28]
cmp       [rcx],ecx
call      qword ptr [7FFF54BAE118]
jmp       short M01_L07
M01_L06
 
mov       rdx,[rbp-30]
mov       rcx,[rbp+10]
mov       r9,[rcx+18]
mov       [rsp+20],r9
lea       r9,[rbp-40]
mov       [rsp+28],r9
lea       r9,[rbp-38]
mov       [rsp+30],r9
mov       r9,[rcx+10]
mov       rcx,[rbp-48]
mov       r8,[rbp-28]
cmp       [rcx],ecx
call      qword ptr [7FFF54BAE130]
M01_L07
 
cmp       byte ptr [rbp-38],0
je        short M01_L08
mov       [rbp-48],rax
cmp       byte ptr [rbp-40],0
jne       short M01_L08
mov       ecx,[rbp-1C]
inc       ecx
mov       [rbp-1C],ecx
M01_L08
 
mov       rcx,[rbp-50]
mov       r11,7FFF53FA1048
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L03
mov       rcx,rsp
call      M01_L10
nop
mov       rcx,[rbp+10]
mov       rdx,[rbp-48]
mov       r8d,[rbp-1C]
call      qword ptr [7FFF54BACD68]
nop
add       rsp,80
pop       rbx
pop       rsi
pop       rbp
ret
M01_L09
 
mov       ecx,40B
mov       rdx,7FFF54BB72A0
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF54BAE9A0]
int       3
M01_L10
 
push      rbp
push      rsi
push      rbx
sub       rsp,40
mov       rbp,[rcx+38]
mov       [rsp+38],rbp
lea       rbp,[rbp+90]
cmp       qword ptr [rbp-50],0
je        short M01_L11
mov       rcx,[rbp-50]
mov       r11,7FFF53FA1050
call      qword ptr [r11]
M01_L11
 
nop
add       rsp,40
pop       rbx
pop       rsi
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF54195B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF54195B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFF54455D58]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,25663900008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToReadOnlyCollection()
push      rsi
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rdx,[rbx+280]
test      rdx,rdx
je        short M00_L00
mov       rcx,1B3CF001FD8
mov       rcx,[rcx]
xor       r8d,r8d
xor       r9d,r9d
call      qword ptr [7FFF54BBCD50]; System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, Boolean, Boolean)
mov       [rsp+20],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rsi
ret
M00_L00
 
call      qword ptr [7FFF546844C8]
mov       ecx,43
mov       rdx,7FFF545FA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54486D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540F6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545FA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540F6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546842B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542E6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, Boolean, Boolean)
push      rbp
push      rsi
push      rbx
sub       rsp,80
lea       rbp,[rsp+90]
xor       eax,eax
mov       [rbp-48],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
vmovdqa   xmmword ptr [rbp-30],xmm4
mov       [rbp-58],rsp
mov       [rbp-18],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       esi,r8d
cmp       [rcx],ecx
test      rbx,rbx
je        near ptr M01_L09
mov       r8,[rcx+8]
cmp       qword ptr [r8+18],0
jne       short M01_L00
test      r9b,r9b
jne       short M01_L00
movzx     r8d,sil
mov       rdx,rbx
call      qword ptr [7FFF54BBCD80]; System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FillFromEmpty(System.Collections.Generic.IEnumerable`1>, Boolean)
nop
add       rsp,80
pop       rbx
pop       rsi
pop       rbp
ret
M01_L00
 
mov       rdx,[rcx+8]
mov       [rbp-48],rdx
mov       edx,[rcx+20]
mov       [rbp-1C],edx
mov       rdx,[rcx]
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+38]
test      r11,r11
je        short M01_L01
jmp       short M01_L02
M01_L01
 
mov       rcx,rdx
mov       rdx,7FFF54BE2010
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L02
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-50],rax
jmp       near ptr M01_L08
M01_L03
 
mov       rcx,[rbp+10]
mov       rdx,[rcx]
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+40]
test      r11,r11
je        short M01_L04
jmp       short M01_L05
M01_L04
 
mov       rcx,rdx
mov       rdx,7FFF54BE2030
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L05
 
lea       rdx,[rbp-30]
mov       rcx,[rbp-50]
call      qword ptr [r11]
xor       r9d,r9d
mov       [rbp-40],r9d
test      sil,sil
jne       short M01_L06
mov       rdx,[rbp-30]
mov       rcx,[rbp+10]
mov       r9,[rcx+18]
mov       [rsp+20],r9
lea       r9,[rbp-38]
mov       [rsp+28],r9
mov       r9,[rcx+10]
mov       rcx,[rbp-48]
mov       r8,[rbp-28]
cmp       [rcx],ecx
call      qword ptr [7FFF54BBE118]
jmp       short M01_L07
M01_L06
 
mov       rdx,[rbp-30]
mov       rcx,[rbp+10]
mov       r9,[rcx+18]
mov       [rsp+20],r9
lea       r9,[rbp-40]
mov       [rsp+28],r9
lea       r9,[rbp-38]
mov       [rsp+30],r9
mov       r9,[rcx+10]
mov       rcx,[rbp-48]
mov       r8,[rbp-28]
cmp       [rcx],ecx
call      qword ptr [7FFF54BBE130]
M01_L07
 
cmp       byte ptr [rbp-38],0
je        short M01_L08
mov       [rbp-48],rax
cmp       byte ptr [rbp-40],0
jne       short M01_L08
mov       ecx,[rbp-1C]
inc       ecx
mov       [rbp-1C],ecx
M01_L08
 
mov       rcx,[rbp-50]
mov       r11,7FFF53FB1048
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L03
mov       rcx,rsp
call      M01_L10
nop
mov       rcx,[rbp+10]
mov       rdx,[rbp-48]
mov       r8d,[rbp-1C]
call      qword ptr [7FFF54BBCD68]
nop
add       rsp,80
pop       rbx
pop       rsi
pop       rbp
ret
M01_L09
 
mov       ecx,40B
mov       rdx,7FFF54BC76C8
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF54BBE9A0]
int       3
M01_L10
 
push      rbp
push      rsi
push      rbx
sub       rsp,40
mov       rbp,[rcx+38]
mov       [rsp+38],rbp
lea       rbp,[rbp+90]
cmp       qword ptr [rbp-50],0
je        short M01_L11
mov       rcx,[rbp-50]
mov       r11,7FFF53FB1050
call      qword ptr [r11]
M01_L11
 
nop
add       rsp,40
pop       rbx
pop       rsi
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF541A5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF541A5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFF54465D58]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,1F45CE30008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToReadOnlyCollection()
push      rsi
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rdx,[rbx+280]
test      rdx,rdx
je        short M00_L00
mov       rcx,2DA6E001FD8
mov       rcx,[rcx]
xor       r8d,r8d
xor       r9d,r9d
call      qword ptr [7FFF54BCCD50]; System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, Boolean, Boolean)
mov       [rsp+20],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rsi
ret
M00_L00
 
call      qword ptr [7FFF546944C8]
mov       ecx,43
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54496D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546942B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542F6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, Boolean, Boolean)
push      rbp
push      rsi
push      rbx
sub       rsp,80
lea       rbp,[rsp+90]
xor       eax,eax
mov       [rbp-48],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
vmovdqa   xmmword ptr [rbp-30],xmm4
mov       [rbp-58],rsp
mov       [rbp-18],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       esi,r8d
cmp       [rcx],ecx
test      rbx,rbx
je        near ptr M01_L09
mov       r8,[rcx+8]
cmp       qword ptr [r8+18],0
jne       short M01_L00
test      r9b,r9b
jne       short M01_L00
movzx     r8d,sil
mov       rdx,rbx
call      qword ptr [7FFF54BCCD80]; System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FillFromEmpty(System.Collections.Generic.IEnumerable`1>, Boolean)
nop
add       rsp,80
pop       rbx
pop       rsi
pop       rbp
ret
M01_L00
 
mov       rdx,[rcx+8]
mov       [rbp-48],rdx
mov       edx,[rcx+20]
mov       [rbp-1C],edx
mov       rdx,[rcx]
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+38]
test      r11,r11
je        short M01_L01
jmp       short M01_L02
M01_L01
 
mov       rcx,rdx
mov       rdx,7FFF54BF2010
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L02
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-50],rax
jmp       near ptr M01_L08
M01_L03
 
mov       rcx,[rbp+10]
mov       rdx,[rcx]
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+40]
test      r11,r11
je        short M01_L04
jmp       short M01_L05
M01_L04
 
mov       rcx,rdx
mov       rdx,7FFF54BF2030
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L05
 
lea       rdx,[rbp-30]
mov       rcx,[rbp-50]
call      qword ptr [r11]
xor       r9d,r9d
mov       [rbp-40],r9d
test      sil,sil
jne       short M01_L06
mov       rdx,[rbp-30]
mov       rcx,[rbp+10]
mov       r9,[rcx+18]
mov       [rsp+20],r9
lea       r9,[rbp-38]
mov       [rsp+28],r9
mov       r9,[rcx+10]
mov       rcx,[rbp-48]
mov       r8,[rbp-28]
cmp       [rcx],ecx
call      qword ptr [7FFF54BCE118]
jmp       short M01_L07
M01_L06
 
mov       rdx,[rbp-30]
mov       rcx,[rbp+10]
mov       r9,[rcx+18]
mov       [rsp+20],r9
lea       r9,[rbp-40]
mov       [rsp+28],r9
lea       r9,[rbp-38]
mov       [rsp+30],r9
mov       r9,[rcx+10]
mov       rcx,[rbp-48]
mov       r8,[rbp-28]
cmp       [rcx],ecx
call      qword ptr [7FFF54BCE130]
M01_L07
 
cmp       byte ptr [rbp-38],0
je        short M01_L08
mov       [rbp-48],rax
cmp       byte ptr [rbp-40],0
jne       short M01_L08
mov       ecx,[rbp-1C]
inc       ecx
mov       [rbp-1C],ecx
M01_L08
 
mov       rcx,[rbp-50]
mov       r11,7FFF53FC1048
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L03
mov       rcx,rsp
call      M01_L10
nop
mov       rcx,[rbp+10]
mov       rdx,[rbp-48]
mov       r8d,[rbp-1C]
call      qword ptr [7FFF54BCCD68]
nop
add       rsp,80
pop       rbx
pop       rsi
pop       rbp
ret
M01_L09
 
mov       ecx,40B
mov       rdx,7FFF54BD76C8
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF54BCE9A0]
int       3
M01_L10
 
push      rbp
push      rsi
push      rbx
sub       rsp,40
mov       rbp,[rcx+38]
mov       [rsp+38],rbp
lea       rbp,[rbp+90]
cmp       qword ptr [rbp-50],0
je        short M01_L11
mov       rcx,[rbp-50]
mov       r11,7FFF53FC1050
call      qword ptr [r11]
M01_L11
 
nop
add       rsp,40
pop       rbx
pop       rsi
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF541B5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF541B5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFF54475D58]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,31AFBE00008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToReadOnlyCollection()
push      rsi
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rdx,[rbx+280]
test      rdx,rdx
je        short M00_L00
mov       rcx,2566A802008
mov       rcx,[rcx]
xor       r8d,r8d
xor       r9d,r9d
call      qword ptr [7FFF54CB7258]; System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, Boolean, Boolean)
mov       [rsp+20],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rsi
ret
M00_L00
 
call      qword ptr [7FFF546744C8]
mov       ecx,43
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54476D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546742B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542D6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, Boolean, Boolean)
push      rbp
push      rsi
push      rbx
sub       rsp,80
lea       rbp,[rsp+90]
xor       eax,eax
mov       [rbp-48],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
vmovdqa   xmmword ptr [rbp-30],xmm4
mov       [rbp-58],rsp
mov       [rbp-18],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       esi,r8d
cmp       [rcx],ecx
test      rbx,rbx
je        near ptr M01_L09
mov       r8,[rcx+8]
cmp       qword ptr [r8+18],0
jne       short M01_L00
test      r9b,r9b
jne       short M01_L00
movzx     r8d,sil
mov       rdx,rbx
call      qword ptr [7FFF54CB7288]; System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FillFromEmpty(System.Collections.Generic.IEnumerable`1>, Boolean)
nop
add       rsp,80
pop       rbx
pop       rsi
pop       rbp
ret
M01_L00
 
mov       rdx,[rcx+8]
mov       [rbp-48],rdx
mov       edx,[rcx+20]
mov       [rbp-1C],edx
mov       rdx,[rcx]
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+38]
test      r11,r11
je        short M01_L01
jmp       short M01_L02
M01_L01
 
mov       rcx,rdx
mov       rdx,7FFF54CE2010
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L02
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-50],rax
jmp       near ptr M01_L08
M01_L03
 
mov       rcx,[rbp+10]
mov       rdx,[rcx]
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+40]
test      r11,r11
je        short M01_L04
jmp       short M01_L05
M01_L04
 
mov       rcx,rdx
mov       rdx,7FFF54CE2030
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L05
 
lea       rdx,[rbp-30]
mov       rcx,[rbp-50]
call      qword ptr [r11]
xor       r9d,r9d
mov       [rbp-40],r9d
test      sil,sil
jne       short M01_L06
mov       rdx,[rbp-30]
mov       rcx,[rbp+10]
mov       r9,[rcx+18]
mov       [rsp+20],r9
lea       r9,[rbp-38]
mov       [rsp+28],r9
mov       r9,[rcx+10]
mov       rcx,[rbp-48]
mov       r8,[rbp-28]
cmp       [rcx],ecx
call      qword ptr [7FFF54CBC6C0]
jmp       short M01_L07
M01_L06
 
mov       rdx,[rbp-30]
mov       rcx,[rbp+10]
mov       r9,[rcx+18]
mov       [rsp+20],r9
lea       r9,[rbp-40]
mov       [rsp+28],r9
lea       r9,[rbp-38]
mov       [rsp+30],r9
mov       r9,[rcx+10]
mov       rcx,[rbp-48]
mov       r8,[rbp-28]
cmp       [rcx],ecx
call      qword ptr [7FFF54CBC6D8]
M01_L07
 
cmp       byte ptr [rbp-38],0
je        short M01_L08
mov       [rbp-48],rax
cmp       byte ptr [rbp-40],0
jne       short M01_L08
mov       ecx,[rbp-1C]
inc       ecx
mov       [rbp-1C],ecx
M01_L08
 
mov       rcx,[rbp-50]
mov       r11,7FFF53FA1A00
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L03
mov       rcx,rsp
call      M01_L10
nop
mov       rcx,[rbp+10]
mov       rdx,[rbp-48]
mov       r8d,[rbp-1C]
call      qword ptr [7FFF54CB7270]
nop
add       rsp,80
pop       rbx
pop       rsi
pop       rbp
ret
M01_L09
 
mov       ecx,40B
mov       rdx,7FFF54CC21D0
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF54CBCF48]
int       3
M01_L10
 
push      rbp
push      rsi
push      rbx
sub       rsp,40
mov       rbp,[rcx+38]
mov       [rsp+38],rbp
lea       rbp,[rbp+90]
cmp       qword ptr [rbp-50],0
je        short M01_L11
mov       rcx,[rbp-50]
mov       r11,7FFF53FA1A08
call      qword ptr [r11]
M01_L11
 
nop
add       rsp,40
pop       rbx
pop       rsi
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF54195B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF54195B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFF54455D58]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,296FC940008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToReadOnlyCollection()
push      rsi
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rdx,[rbx+280]
test      rdx,rdx
je        short M00_L00
mov       rcx,21E68C02010
mov       rcx,[rcx]
xor       r8d,r8d
xor       r9d,r9d
call      qword ptr [7FFF54D9EE80]; System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, Boolean, Boolean)
mov       [rsp+20],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rsi
ret
M00_L00
 
call      qword ptr [7FFF546644C8]
mov       ecx,43
mov       rdx,7FFF545DA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54466D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540D6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545DA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540D6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546642B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542C6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, Boolean, Boolean)
push      rbp
push      rsi
push      rbx
sub       rsp,80
lea       rbp,[rsp+90]
xor       eax,eax
mov       [rbp-48],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
vmovdqa   xmmword ptr [rbp-30],xmm4
mov       [rbp-58],rsp
mov       [rbp-18],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       esi,r8d
cmp       [rcx],ecx
test      rbx,rbx
je        near ptr M01_L09
mov       r8,[rcx+8]
cmp       qword ptr [r8+18],0
jne       short M01_L00
test      r9b,r9b
jne       short M01_L00
movzx     r8d,sil
mov       rdx,rbx
call      qword ptr [7FFF54D9EEB0]; System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FillFromEmpty(System.Collections.Generic.IEnumerable`1>, Boolean)
nop
add       rsp,80
pop       rbx
pop       rsi
pop       rbp
ret
M01_L00
 
mov       rdx,[rcx+8]
mov       [rbp-48],rdx
mov       edx,[rcx+20]
mov       [rbp-1C],edx
mov       rdx,[rcx]
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+38]
test      r11,r11
je        short M01_L01
jmp       short M01_L02
M01_L01
 
mov       rcx,rdx
mov       rdx,7FFF54E47C30
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L02
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-50],rax
jmp       near ptr M01_L08
M01_L03
 
mov       rcx,[rbp+10]
mov       rdx,[rcx]
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+40]
test      r11,r11
je        short M01_L04
jmp       short M01_L05
M01_L04
 
mov       rcx,rdx
mov       rdx,7FFF54E47C50
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L05
 
lea       rdx,[rbp-30]
mov       rcx,[rbp-50]
call      qword ptr [r11]
xor       r9d,r9d
mov       [rbp-40],r9d
test      sil,sil
jne       short M01_L06
mov       rdx,[rbp-30]
mov       rcx,[rbp+10]
mov       r9,[rcx+18]
mov       [rsp+20],r9
lea       r9,[rbp-38]
mov       [rsp+28],r9
mov       r9,[rcx+10]
mov       rcx,[rbp-48]
mov       r8,[rbp-28]
cmp       [rcx],ecx
call      qword ptr [7FFF54E54288]
jmp       short M01_L07
M01_L06
 
mov       rdx,[rbp-30]
mov       rcx,[rbp+10]
mov       r9,[rcx+18]
mov       [rsp+20],r9
lea       r9,[rbp-40]
mov       [rsp+28],r9
lea       r9,[rbp-38]
mov       [rsp+30],r9
mov       r9,[rcx+10]
mov       rcx,[rbp-48]
mov       r8,[rbp-28]
cmp       [rcx],ecx
call      qword ptr [7FFF54E542A0]
M01_L07
 
cmp       byte ptr [rbp-38],0
je        short M01_L08
mov       [rbp-48],rax
cmp       byte ptr [rbp-40],0
jne       short M01_L08
mov       ecx,[rbp-1C]
inc       ecx
mov       [rbp-1C],ecx
M01_L08
 
mov       rcx,[rbp-50]
mov       r11,7FFF53F91AB8
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L03
mov       rcx,rsp
call      M01_L10
nop
mov       rcx,[rbp+10]
mov       rdx,[rbp-48]
mov       r8d,[rbp-1C]
call      qword ptr [7FFF54D9EE98]
nop
add       rsp,80
pop       rbx
pop       rsi
pop       rbp
ret
M01_L09
 
mov       ecx,40B
mov       rdx,7FFF54DB5748
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF54E54B10]
int       3
M01_L10
 
push      rbp
push      rsi
push      rbx
sub       rsp,40
mov       rbp,[rcx+38]
mov       [rsp+38],rbp
lea       rbp,[rbp+90]
cmp       qword ptr [rbp-50],0
je        short M01_L11
mov       rcx,[rbp-50]
mov       r11,7FFF53F91AC0
call      qword ptr [r11]
M01_L11
 
nop
add       rsp,40
pop       rbx
pop       rsi
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF54185B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF54185B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFF54445D58]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,25EF6BB0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToReadOnlyDictionary()
push      rdi
push      rsi
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       [rsp+28],rdi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFF546544C8]
mov       ecx,43
mov       rdx,7FFF545CA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54456D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540C6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545CA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540C6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546542B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542B6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M01_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M01_L02
test      rbx,rbx
je        short M01_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M01_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M01_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF54175B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF54175B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L01
 
call      qword ptr [7FFF54435D58]
int       3
M01_L02
 
test      rbx,rbx
je        short M01_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M01_L04
M01_L03
 
mov       rax,24F9C840008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToReadOnlyDictionary()
push      rdi
push      rsi
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       [rsp+28],rdi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFF546644C8]
mov       ecx,43
mov       rdx,7FFF545DA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54466D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540D6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545DA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540D6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546642B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542C6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M01_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M01_L02
test      rbx,rbx
je        short M01_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M01_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M01_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF54185B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF54185B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L01
 
call      qword ptr [7FFF54445D58]
int       3
M01_L02
 
test      rbx,rbx
je        short M01_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M01_L04
M01_L03
 
mov       rax,1CB93030008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToReadOnlyDictionary()
push      rdi
push      rsi
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       [rsp+28],rdi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFF546544C8]
mov       ecx,43
mov       rdx,7FFF545CA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54456D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540C6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545CA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540C6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546542B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542B6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M01_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M01_L02
test      rbx,rbx
je        short M01_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M01_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M01_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF54175B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF54175B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L01
 
call      qword ptr [7FFF54435D58]
int       3
M01_L02
 
test      rbx,rbx
je        short M01_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M01_L04
M01_L03
 
mov       rax,21078070008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToReadOnlyDictionary()
push      rdi
push      rsi
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       [rsp+28],rdi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFF546744C8]
mov       ecx,43
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54476D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546742B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542D6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M01_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M01_L02
test      rbx,rbx
je        short M01_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M01_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M01_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF54195B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF54195B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L01
 
call      qword ptr [7FFF54455D58]
int       3
M01_L02
 
test      rbx,rbx
je        short M01_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M01_L04
M01_L03
 
mov       rax,20E5CC10008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToReadOnlyDictionary()
push      rdi
push      rsi
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       [rsp+28],rdi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFF546944C8]
mov       ecx,43
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54496D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546942B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542F6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M01_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M01_L02
test      rbx,rbx
je        short M01_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M01_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M01_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF541B5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF541B5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L01
 
call      qword ptr [7FFF54475D58]
int       3
M01_L02
 
test      rbx,rbx
je        short M01_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M01_L04
M01_L03
 
mov       rax,2AF301A0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToReadOnlyDictionary()
push      rdi
push      rsi
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       [rsp+28],rdi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFF546644C8]
mov       ecx,43
mov       rdx,7FFF545DA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54466D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540D6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545DA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540D6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546642B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542C6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M01_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M01_L02
test      rbx,rbx
je        short M01_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M01_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M01_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF54185B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF54185B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L01
 
call      qword ptr [7FFF54445D58]
int       3
M01_L02
 
test      rbx,rbx
je        short M01_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M01_L04
M01_L03
 
mov       rax,1D324FF0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToReadOnlyDictionary()
push      rdi
push      rsi
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       [rsp+28],rdi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFF546844C8]
mov       ecx,43
mov       rdx,7FFF545FA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54486D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540F6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545FA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540F6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546842B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542E6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M01_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M01_L02
test      rbx,rbx
je        short M01_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M01_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M01_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF541A5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF541A5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L01
 
call      qword ptr [7FFF54465D58]
int       3
M01_L02
 
test      rbx,rbx
je        short M01_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M01_L04
M01_L03
 
mov       rax,287159D0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToReadOnlyDictionary()
push      rdi
push      rsi
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       [rsp+28],rdi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFF546744C8]
mov       ecx,43
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54476D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546742B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542D6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M01_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M01_L02
test      rbx,rbx
je        short M01_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M01_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M01_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF54195B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF54195B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L01
 
call      qword ptr [7FFF54455D58]
int       3
M01_L02
 
test      rbx,rbx
je        short M01_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M01_L04
M01_L03
 
mov       rax,284003F0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToSortedDictionaryTest()
push      rdi
push      rsi
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rcx,offset MT_System.Collections.Generic.SortedDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rcx,rdi
mov       rdx,rsi
xor       r8d,r8d
call      qword ptr [7FFF54BA6430]; System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
mov       [rsp+28],rdi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFF546744C8]
mov       ecx,43
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54476D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546742B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542D6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
mov       [rbp-60],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,r8
test      rbx,rbx
je        near ptr M01_L21
mov       rdi,[rcx]
mov       rdx,rdi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       rax,[rax+40]
test      rax,rax
je        near ptr M01_L05
M01_L00
 
mov       rcx,rax
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,rsi
call      qword ptr [7FFF54BA70F0]; System.Collections.Generic.SortedDictionary`2+KeyValuePairComparer[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1)
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+48]
test      rcx,rcx
je        near ptr M01_L06
M01_L01
 
mov       rdx,rbx
call      qword ptr [7FFF540E4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L22
M01_L02
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L07
M01_L03
 
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,r14
call      qword ptr [7FFF54BAC018]; System.Collections.Generic.SortedSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1>)
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+58]
test      r11,r11
je        short M01_L08
M01_L04
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       short M01_L09
M01_L05
 
mov       rcx,rdx
mov       rdx,7FFF54D62A08
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
jmp       near ptr M01_L00
M01_L06
 
mov       rcx,rdi
mov       rdx,7FFF54D62A20
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L01
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFF54D62CA8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L03
M01_L08
 
mov       rcx,rdi
mov       rdx,7FFF54D62CC8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L04
M01_L09
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M01_L12
M01_L10
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+60]
test      r11,r11
je        near ptr M01_L17
M01_L11
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,[rbp+10]
mov       rdx,[rcx+18]
vmovdqu   xmm0,xmmword ptr [rbp-40]
vmovdqu   xmmword ptr [rbp-50],xmm0
mov       rcx,rdx
lea       rdx,[rbp-50]
cmp       [rcx],ecx
call      qword ptr [7FFF54BB8FE8]; System.Collections.Generic.TreeSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]].AddIfNotPresent(System.Collections.Generic.KeyValuePair`2)
mov       rax,[rbp-58]
M01_L12
 
cmp       rsi,r15
jne       short M01_L15
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M01_L18
M01_L13
 
mov       ecx,[r14+0C]
mov       rbx,[r14]
cmp       ecx,[rbx+38]
jae       short M01_L16
mov       rdx,[rbx+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L14
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L13
mov       rdx,[rcx]
mov       rbx,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,rbx
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L10
M01_L14
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L15
 
mov       rcx,rax
mov       r11,7FFF53FA10F0
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L10
mov       rax,[rbp-58]
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp-58]
mov       ecx,[rbx+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       short M01_L19
M01_L17
 
mov       rcx,rdi
mov       rdx,7FFF54D62CE8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L11
M01_L18
 
call      qword ptr [7FFF54455E00]
int       3
M01_L19
 
cmp       rsi,r15
jne       near ptr M01_L27
M01_L20
 
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L21
 
mov       ecx,7ED
mov       rdx,7FFF54440658
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF542D6790]
int       3
M01_L22
 
mov       r15,[rsi+18]
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rdi
mov       rdx,7FFF54D62A08
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L24
 
mov       rdx,[r15+10]
call      qword ptr [7FFF540E4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
test      rax,rax
je        near ptr M01_L02
mov       rcx,[rax+8]
mov       rdx,[r14+8]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L02
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L25
jmp       short M01_L26
M01_L25
 
mov       rcx,rdi
mov       rdx,7FFF54D62CA8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L26
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rdx,[rsi+18]
mov       rcx,rbx
mov       r8,r14
call      qword ptr [7FFF54BAC048]
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L27
 
mov       rcx,rax
mov       r11,7FFF53FA10F8
call      qword ptr [r11]
jmp       near ptr M01_L20
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M01_L28
mov       rax,[rbp-58]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L28
mov       rcx,rax
mov       r11,7FFF53FA10F8
call      qword ptr [r11]
M01_L28
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF54195B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF54195B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFF54455D58]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,1E45F5A0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToSortedDictionaryTest()
push      rdi
push      rsi
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rcx,offset MT_System.Collections.Generic.SortedDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rcx,rdi
mov       rdx,rsi
xor       r8d,r8d
call      qword ptr [7FFF54B9C4B0]; System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
mov       [rsp+28],rdi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFF546644C8]
mov       ecx,43
mov       rdx,7FFF545DA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54466D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540D6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545DA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540D6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546642B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542C6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
mov       [rbp-60],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,r8
test      rbx,rbx
je        near ptr M01_L21
mov       rdi,[rcx]
mov       rdx,rdi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       rax,[rax+40]
test      rax,rax
je        near ptr M01_L05
M01_L00
 
mov       rcx,rax
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,rsi
call      qword ptr [7FFF54B9D170]; System.Collections.Generic.SortedDictionary`2+KeyValuePairComparer[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1)
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+48]
test      rcx,rcx
je        near ptr M01_L06
M01_L01
 
mov       rdx,rbx
call      qword ptr [7FFF540D4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L22
M01_L02
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L07
M01_L03
 
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,r14
call      qword ptr [7FFF54B9DFF8]; System.Collections.Generic.SortedSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1>)
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+58]
test      r11,r11
je        short M01_L08
M01_L04
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       short M01_L09
M01_L05
 
mov       rcx,rdx
mov       rdx,7FFF54D540B8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
jmp       near ptr M01_L00
M01_L06
 
mov       rcx,rdi
mov       rdx,7FFF54D540D0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L01
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFF54D54358
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L03
M01_L08
 
mov       rcx,rdi
mov       rdx,7FFF54D54378
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L04
M01_L09
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M01_L12
M01_L10
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+60]
test      r11,r11
je        near ptr M01_L17
M01_L11
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,[rbp+10]
mov       rdx,[rcx+18]
vmovdqu   xmm0,xmmword ptr [rbp-40]
vmovdqu   xmmword ptr [rbp-50],xmm0
mov       rcx,rdx
lea       rdx,[rbp-50]
cmp       [rcx],ecx
call      qword ptr [7FFF54BACD18]; System.Collections.Generic.TreeSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]].AddIfNotPresent(System.Collections.Generic.KeyValuePair`2)
mov       rax,[rbp-58]
M01_L12
 
cmp       rsi,r15
jne       short M01_L15
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M01_L18
M01_L13
 
mov       ecx,[r14+0C]
mov       rbx,[r14]
cmp       ecx,[rbx+38]
jae       short M01_L16
mov       rdx,[rbx+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L14
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L13
mov       rdx,[rcx]
mov       rbx,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,rbx
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L10
M01_L14
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L15
 
mov       rcx,rax
mov       r11,7FFF53F90FD0
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L10
mov       rax,[rbp-58]
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp-58]
mov       ecx,[rbx+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       short M01_L19
M01_L17
 
mov       rcx,rdi
mov       rdx,7FFF54D54398
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L11
M01_L18
 
call      qword ptr [7FFF54445E00]
int       3
M01_L19
 
cmp       rsi,r15
jne       near ptr M01_L27
M01_L20
 
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L21
 
mov       ecx,7ED
mov       rdx,7FFF54430658
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF542C6790]
int       3
M01_L22
 
mov       r15,[rsi+18]
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rdi
mov       rdx,7FFF54D540B8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L24
 
mov       rdx,[r15+10]
call      qword ptr [7FFF540D4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
test      rax,rax
je        near ptr M01_L02
mov       rcx,[rax+8]
mov       rdx,[r14+8]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L02
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L25
jmp       short M01_L26
M01_L25
 
mov       rcx,rdi
mov       rdx,7FFF54D54358
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L26
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rdx,[rsi+18]
mov       rcx,rbx
mov       r8,r14
call      qword ptr [7FFF54B9E028]
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L27
 
mov       rcx,rax
mov       r11,7FFF53F90FD8
call      qword ptr [r11]
jmp       near ptr M01_L20
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M01_L28
mov       rax,[rbp-58]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L28
mov       rcx,rax
mov       r11,7FFF53F90FD8
call      qword ptr [r11]
M01_L28
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF54185B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF54185B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFF54445D58]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,1EEB2300008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToSortedDictionaryTest()
push      rdi
push      rsi
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rcx,offset MT_System.Collections.Generic.SortedDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rcx,rdi
mov       rdx,rsi
xor       r8d,r8d
call      qword ptr [7FFF54BAC030]; System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
mov       [rsp+28],rdi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFF546744C8]
mov       ecx,43
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54476D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546742B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542D6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
mov       [rbp-60],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,r8
test      rbx,rbx
je        near ptr M01_L21
mov       rdi,[rcx]
mov       rdx,rdi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       rax,[rax+40]
test      rax,rax
je        near ptr M01_L05
M01_L00
 
mov       rcx,rax
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,rsi
call      qword ptr [7FFF54BACCF0]; System.Collections.Generic.SortedDictionary`2+KeyValuePairComparer[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1)
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+48]
test      rcx,rcx
je        near ptr M01_L06
M01_L01
 
mov       rdx,rbx
call      qword ptr [7FFF540E4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L22
M01_L02
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L07
M01_L03
 
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,r14
call      qword ptr [7FFF54BADB78]; System.Collections.Generic.SortedSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1>)
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+58]
test      r11,r11
je        short M01_L08
M01_L04
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       short M01_L09
M01_L05
 
mov       rcx,rdx
mov       rdx,7FFF54D64378
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
jmp       near ptr M01_L00
M01_L06
 
mov       rcx,rdi
mov       rdx,7FFF54D64390
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L01
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFF54D64618
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L03
M01_L08
 
mov       rcx,rdi
mov       rdx,7FFF54D64638
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L04
M01_L09
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M01_L12
M01_L10
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+60]
test      r11,r11
je        near ptr M01_L17
M01_L11
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,[rbp+10]
mov       rdx,[rcx+18]
vmovdqu   xmm0,xmmword ptr [rbp-40]
vmovdqu   xmmword ptr [rbp-50],xmm0
mov       rcx,rdx
lea       rdx,[rbp-50]
cmp       [rcx],ecx
call      qword ptr [7FFF54BBC8E8]; System.Collections.Generic.TreeSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]].AddIfNotPresent(System.Collections.Generic.KeyValuePair`2)
mov       rax,[rbp-58]
M01_L12
 
cmp       rsi,r15
jne       short M01_L15
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M01_L18
M01_L13
 
mov       ecx,[r14+0C]
mov       rbx,[r14]
cmp       ecx,[rbx+38]
jae       short M01_L16
mov       rdx,[rbx+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L14
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L13
mov       rdx,[rcx]
mov       rbx,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,rbx
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L10
M01_L14
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L15
 
mov       rcx,rax
mov       r11,7FFF53FA0FD0
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L10
mov       rax,[rbp-58]
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp-58]
mov       ecx,[rbx+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       short M01_L19
M01_L17
 
mov       rcx,rdi
mov       rdx,7FFF54D64658
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L11
M01_L18
 
call      qword ptr [7FFF54455E00]
int       3
M01_L19
 
cmp       rsi,r15
jne       near ptr M01_L27
M01_L20
 
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L21
 
mov       ecx,7ED
mov       rdx,7FFF54440658
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF542D6790]
int       3
M01_L22
 
mov       r15,[rsi+18]
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rdi
mov       rdx,7FFF54D64378
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L24
 
mov       rdx,[r15+10]
call      qword ptr [7FFF540E4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
test      rax,rax
je        near ptr M01_L02
mov       rcx,[rax+8]
mov       rdx,[r14+8]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L02
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L25
jmp       short M01_L26
M01_L25
 
mov       rcx,rdi
mov       rdx,7FFF54D64618
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L26
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rdx,[rsi+18]
mov       rcx,rbx
mov       r8,r14
call      qword ptr [7FFF54BADBA8]
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L27
 
mov       rcx,rax
mov       r11,7FFF53FA0FD8
call      qword ptr [r11]
jmp       near ptr M01_L20
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M01_L28
mov       rax,[rbp-58]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L28
mov       rcx,rax
mov       r11,7FFF53FA0FD8
call      qword ptr [r11]
M01_L28
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF54195B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF54195B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFF54455D58]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,1F8F2BB0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToSortedDictionaryTest()
push      rdi
push      rsi
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rcx,offset MT_System.Collections.Generic.SortedDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rcx,rdi
mov       rdx,rsi
xor       r8d,r8d
call      qword ptr [7FFF54BBC4B0]; System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
mov       [rsp+28],rdi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFF546844C8]
mov       ecx,43
mov       rdx,7FFF545FA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54486D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540F6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545FA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540F6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546842B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542E6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
mov       [rbp-60],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,r8
test      rbx,rbx
je        near ptr M01_L21
mov       rdi,[rcx]
mov       rdx,rdi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       rax,[rax+40]
test      rax,rax
je        near ptr M01_L05
M01_L00
 
mov       rcx,rax
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,rsi
call      qword ptr [7FFF54BBD170]; System.Collections.Generic.SortedDictionary`2+KeyValuePairComparer[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1)
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+48]
test      rcx,rcx
je        near ptr M01_L06
M01_L01
 
mov       rdx,rbx
call      qword ptr [7FFF540F4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L22
M01_L02
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L07
M01_L03
 
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,r14
call      qword ptr [7FFF54BBDFF8]; System.Collections.Generic.SortedSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1>)
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+58]
test      r11,r11
je        short M01_L08
M01_L04
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       short M01_L09
M01_L05
 
mov       rcx,rdx
mov       rdx,7FFF54D74720
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
jmp       near ptr M01_L00
M01_L06
 
mov       rcx,rdi
mov       rdx,7FFF54D74738
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L01
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFF54D749C0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L03
M01_L08
 
mov       rcx,rdi
mov       rdx,7FFF54D749E0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L04
M01_L09
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M01_L12
M01_L10
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+60]
test      r11,r11
je        near ptr M01_L17
M01_L11
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,[rbp+10]
mov       rdx,[rcx+18]
vmovdqu   xmm0,xmmword ptr [rbp-40]
vmovdqu   xmmword ptr [rbp-50],xmm0
mov       rcx,rdx
lea       rdx,[rbp-50]
cmp       [rcx],ecx
call      qword ptr [7FFF54BCCD18]; System.Collections.Generic.TreeSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]].AddIfNotPresent(System.Collections.Generic.KeyValuePair`2)
mov       rax,[rbp-58]
M01_L12
 
cmp       rsi,r15
jne       short M01_L15
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M01_L18
M01_L13
 
mov       ecx,[r14+0C]
mov       rbx,[r14]
cmp       ecx,[rbx+38]
jae       short M01_L16
mov       rdx,[rbx+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L14
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L13
mov       rdx,[rcx]
mov       rbx,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,rbx
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L10
M01_L14
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L15
 
mov       rcx,rax
mov       r11,7FFF53FB0FD0
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L10
mov       rax,[rbp-58]
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp-58]
mov       ecx,[rbx+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       short M01_L19
M01_L17
 
mov       rcx,rdi
mov       rdx,7FFF54D74A00
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L11
M01_L18
 
call      qword ptr [7FFF54465E00]
int       3
M01_L19
 
cmp       rsi,r15
jne       near ptr M01_L27
M01_L20
 
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L21
 
mov       ecx,7ED
mov       rdx,7FFF54450658
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF542E6790]
int       3
M01_L22
 
mov       r15,[rsi+18]
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rdi
mov       rdx,7FFF54D74720
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L24
 
mov       rdx,[r15+10]
call      qword ptr [7FFF540F4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
test      rax,rax
je        near ptr M01_L02
mov       rcx,[rax+8]
mov       rdx,[r14+8]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L02
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L25
jmp       short M01_L26
M01_L25
 
mov       rcx,rdi
mov       rdx,7FFF54D749C0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L26
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rdx,[rsi+18]
mov       rcx,rbx
mov       r8,r14
call      qword ptr [7FFF54BBE028]
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L27
 
mov       rcx,rax
mov       r11,7FFF53FB0FD8
call      qword ptr [r11]
jmp       near ptr M01_L20
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M01_L28
mov       rax,[rbp-58]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L28
mov       rcx,rax
mov       r11,7FFF53FB0FD8
call      qword ptr [r11]
M01_L28
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF541A5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF541A5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFF54465D58]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,1EDAEEC0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToSortedDictionaryTest()
push      rdi
push      rsi
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rcx,offset MT_System.Collections.Generic.SortedDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rcx,rdi
mov       rdx,rsi
xor       r8d,r8d
call      qword ptr [7FFF54BBC030]; System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
mov       [rsp+28],rdi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFF546844C8]
mov       ecx,43
mov       rdx,7FFF545FA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54486D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540F6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545FA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540F6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546842B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542E6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
mov       [rbp-60],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,r8
test      rbx,rbx
je        near ptr M01_L21
mov       rdi,[rcx]
mov       rdx,rdi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       rax,[rax+40]
test      rax,rax
je        near ptr M01_L05
M01_L00
 
mov       rcx,rax
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,rsi
call      qword ptr [7FFF54BBCCF0]; System.Collections.Generic.SortedDictionary`2+KeyValuePairComparer[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1)
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+48]
test      rcx,rcx
je        near ptr M01_L06
M01_L01
 
mov       rdx,rbx
call      qword ptr [7FFF540F4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L22
M01_L02
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L07
M01_L03
 
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,r14
call      qword ptr [7FFF54BBDB78]; System.Collections.Generic.SortedSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1>)
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+58]
test      r11,r11
je        short M01_L08
M01_L04
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       short M01_L09
M01_L05
 
mov       rcx,rdx
mov       rdx,7FFF54D74D28
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
jmp       near ptr M01_L00
M01_L06
 
mov       rcx,rdi
mov       rdx,7FFF54D74D40
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L01
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFF54D74FC8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L03
M01_L08
 
mov       rcx,rdi
mov       rdx,7FFF54D74FE8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L04
M01_L09
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M01_L12
M01_L10
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+60]
test      r11,r11
je        near ptr M01_L17
M01_L11
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,[rbp+10]
mov       rdx,[rcx+18]
vmovdqu   xmm0,xmmword ptr [rbp-40]
vmovdqu   xmmword ptr [rbp-50],xmm0
mov       rcx,rdx
lea       rdx,[rbp-50]
cmp       [rcx],ecx
call      qword ptr [7FFF54BCCCC0]; System.Collections.Generic.TreeSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]].AddIfNotPresent(System.Collections.Generic.KeyValuePair`2)
mov       rax,[rbp-58]
M01_L12
 
cmp       rsi,r15
jne       short M01_L15
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M01_L18
M01_L13
 
mov       ecx,[r14+0C]
mov       rbx,[r14]
cmp       ecx,[rbx+38]
jae       short M01_L16
mov       rdx,[rbx+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L14
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L13
mov       rdx,[rcx]
mov       rbx,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,rbx
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L10
M01_L14
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L15
 
mov       rcx,rax
mov       r11,7FFF53FB0FD0
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L10
mov       rax,[rbp-58]
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp-58]
mov       ecx,[rbx+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       short M01_L19
M01_L17
 
mov       rcx,rdi
mov       rdx,7FFF54D75008
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L11
M01_L18
 
call      qword ptr [7FFF54465E00]
int       3
M01_L19
 
cmp       rsi,r15
jne       near ptr M01_L27
M01_L20
 
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L21
 
mov       ecx,7ED
mov       rdx,7FFF54450658
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF542E6790]
int       3
M01_L22
 
mov       r15,[rsi+18]
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rdi
mov       rdx,7FFF54D74D28
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L24
 
mov       rdx,[r15+10]
call      qword ptr [7FFF540F4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
test      rax,rax
je        near ptr M01_L02
mov       rcx,[rax+8]
mov       rdx,[r14+8]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L02
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L25
jmp       short M01_L26
M01_L25
 
mov       rcx,rdi
mov       rdx,7FFF54D74FC8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L26
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rdx,[rsi+18]
mov       rcx,rbx
mov       r8,r14
call      qword ptr [7FFF54BBDBA8]
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L27
 
mov       rcx,rax
mov       r11,7FFF53FB0FD8
call      qword ptr [r11]
jmp       near ptr M01_L20
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M01_L28
mov       rax,[rbp-58]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L28
mov       rcx,rax
mov       r11,7FFF53FB0FD8
call      qword ptr [r11]
M01_L28
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF541A5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF541A5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFF54465D58]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,233A5700008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToSortedDictionaryTest()
push      rdi
push      rsi
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rcx,offset MT_System.Collections.Generic.SortedDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rcx,rdi
mov       rdx,rsi
xor       r8d,r8d
call      qword ptr [7FFF54C05DA0]; System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
mov       [rsp+28],rdi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFF546944C8]
mov       ecx,43
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54496D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546942B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542F6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
mov       [rbp-60],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,r8
test      rbx,rbx
je        near ptr M01_L21
mov       rdi,[rcx]
mov       rdx,rdi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       rax,[rax+40]
test      rax,rax
je        near ptr M01_L05
M01_L00
 
mov       rcx,rax
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,rsi
call      qword ptr [7FFF54C06A60]; System.Collections.Generic.SortedDictionary`2+KeyValuePairComparer[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1)
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+48]
test      rcx,rcx
je        near ptr M01_L06
M01_L01
 
mov       rdx,rbx
call      qword ptr [7FFF54104360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L22
M01_L02
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L07
M01_L03
 
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,r14
call      qword ptr [7FFF54C078E8]; System.Collections.Generic.SortedSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1>)
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+58]
test      r11,r11
je        short M01_L08
M01_L04
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       short M01_L09
M01_L05
 
mov       rcx,rdx
mov       rdx,7FFF54DC6620
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
jmp       near ptr M01_L00
M01_L06
 
mov       rcx,rdi
mov       rdx,7FFF54DC6638
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L01
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFF54DC68C0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L03
M01_L08
 
mov       rcx,rdi
mov       rdx,7FFF54DC68E0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L04
M01_L09
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M01_L12
M01_L10
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+60]
test      r11,r11
je        near ptr M01_L17
M01_L11
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,[rbp+10]
mov       rdx,[rcx+18]
vmovdqu   xmm0,xmmword ptr [rbp-40]
vmovdqu   xmmword ptr [rbp-50],xmm0
mov       rcx,rdx
lea       rdx,[rbp-50]
cmp       [rcx],ecx
call      qword ptr [7FFF54BF98A0]; System.Collections.Generic.TreeSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]].AddIfNotPresent(System.Collections.Generic.KeyValuePair`2)
mov       rax,[rbp-58]
M01_L12
 
cmp       rsi,r15
jne       short M01_L15
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M01_L18
M01_L13
 
mov       ecx,[r14+0C]
mov       rbx,[r14]
cmp       ecx,[rbx+38]
jae       short M01_L16
mov       rdx,[rbx+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L14
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L13
mov       rdx,[rcx]
mov       rbx,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,rbx
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L10
M01_L14
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L15
 
mov       rcx,rax
mov       r11,7FFF53FC1170
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L10
mov       rax,[rbp-58]
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp-58]
mov       ecx,[rbx+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       short M01_L19
M01_L17
 
mov       rcx,rdi
mov       rdx,7FFF54DC6900
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L11
M01_L18
 
call      qword ptr [7FFF54475E00]
int       3
M01_L19
 
cmp       rsi,r15
jne       near ptr M01_L27
M01_L20
 
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L21
 
mov       ecx,7ED
mov       rdx,7FFF54460658
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF542F6790]
int       3
M01_L22
 
mov       r15,[rsi+18]
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rdi
mov       rdx,7FFF54DC6620
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L24
 
mov       rdx,[r15+10]
call      qword ptr [7FFF54104360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
test      rax,rax
je        near ptr M01_L02
mov       rcx,[rax+8]
mov       rdx,[r14+8]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L02
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L25
jmp       short M01_L26
M01_L25
 
mov       rcx,rdi
mov       rdx,7FFF54DC68C0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L26
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rdx,[rsi+18]
mov       rcx,rbx
mov       r8,r14
call      qword ptr [7FFF54C07918]
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L27
 
mov       rcx,rax
mov       r11,7FFF53FC1178
call      qword ptr [r11]
jmp       near ptr M01_L20
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M01_L28
mov       rax,[rbp-58]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L28
mov       rcx,rax
mov       r11,7FFF53FC1178
call      qword ptr [r11]
M01_L28
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF541B5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF541B5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFF54475D58]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,326D3640008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToSortedDictionaryTest()
push      rdi
push      rsi
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rcx,offset MT_System.Collections.Generic.SortedDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rcx,rdi
mov       rdx,rsi
xor       r8d,r8d
call      qword ptr [7FFF54CE4030]; System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
mov       [rsp+28],rdi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFF546744C8]
mov       ecx,43
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54476D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546742B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542D6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
mov       [rbp-60],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,r8
test      rbx,rbx
je        near ptr M01_L21
mov       rdi,[rcx]
mov       rdx,rdi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       rax,[rax+40]
test      rax,rax
je        near ptr M01_L05
M01_L00
 
mov       rcx,rax
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,rsi
call      qword ptr [7FFF54CE4CF0]; System.Collections.Generic.SortedDictionary`2+KeyValuePairComparer[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1)
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+48]
test      rcx,rcx
je        near ptr M01_L06
M01_L01
 
mov       rdx,rbx
call      qword ptr [7FFF540E4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L22
M01_L02
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L07
M01_L03
 
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,r14
call      qword ptr [7FFF54CE5B78]; System.Collections.Generic.SortedSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1>)
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+58]
test      r11,r11
je        short M01_L08
M01_L04
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       short M01_L09
M01_L05
 
mov       rcx,rdx
mov       rdx,7FFF54DDABF8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
jmp       near ptr M01_L00
M01_L06
 
mov       rcx,rdi
mov       rdx,7FFF54DDAC10
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L01
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFF54DDAE98
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L03
M01_L08
 
mov       rcx,rdi
mov       rdx,7FFF54DDAEB8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L04
M01_L09
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M01_L12
M01_L10
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+60]
test      r11,r11
je        near ptr M01_L17
M01_L11
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,[rbp+10]
mov       rdx,[rcx+18]
vmovdqu   xmm0,xmmword ptr [rbp-40]
vmovdqu   xmmword ptr [rbp-50],xmm0
mov       rcx,rdx
lea       rdx,[rbp-50]
cmp       [rcx],ecx
call      qword ptr [7FFF54CD8FE8]; System.Collections.Generic.TreeSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]].AddIfNotPresent(System.Collections.Generic.KeyValuePair`2)
mov       rax,[rbp-58]
M01_L12
 
cmp       rsi,r15
jne       short M01_L15
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M01_L18
M01_L13
 
mov       ecx,[r14+0C]
mov       rbx,[r14]
cmp       ecx,[rbx+38]
jae       short M01_L16
mov       rdx,[rbx+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L14
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L13
mov       rdx,[rcx]
mov       rbx,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,rbx
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L10
M01_L14
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L15
 
mov       rcx,rax
mov       r11,7FFF53FA1A00
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L10
mov       rax,[rbp-58]
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp-58]
mov       ecx,[rbx+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       short M01_L19
M01_L17
 
mov       rcx,rdi
mov       rdx,7FFF54DDAED8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L11
M01_L18
 
call      qword ptr [7FFF54455E00]
int       3
M01_L19
 
cmp       rsi,r15
jne       near ptr M01_L27
M01_L20
 
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L21
 
mov       ecx,7ED
mov       rdx,7FFF54440658
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF542D6790]
int       3
M01_L22
 
mov       r15,[rsi+18]
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rdi
mov       rdx,7FFF54DDABF8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L24
 
mov       rdx,[r15+10]
call      qword ptr [7FFF540E4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
test      rax,rax
je        near ptr M01_L02
mov       rcx,[rax+8]
mov       rdx,[r14+8]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L02
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L25
jmp       short M01_L26
M01_L25
 
mov       rcx,rdi
mov       rdx,7FFF54DDAE98
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L26
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rdx,[rsi+18]
mov       rcx,rbx
mov       r8,r14
call      qword ptr [7FFF54CE5BA8]
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L27
 
mov       rcx,rax
mov       r11,7FFF53FA1A08
call      qword ptr [r11]
jmp       near ptr M01_L20
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M01_L28
mov       rax,[rbp-58]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L28
mov       rcx,rax
mov       r11,7FFF53FA1A08
call      qword ptr [r11]
M01_L28
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF54195B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF54195B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFF54455D58]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,184C8690008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToSortedDictionaryTest()
push      rdi
push      rsi
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rcx,offset MT_System.Collections.Generic.SortedDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rcx,rdi
mov       rdx,rsi
xor       r8d,r8d
call      qword ptr [7FFF54D8E5E0]; System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
mov       [rsp+28],rdi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFF546544C8]
mov       ecx,43
mov       rdx,7FFF545CA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54456D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540C6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545CA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540C6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546542B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542B6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
mov       [rbp-60],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,r8
test      rbx,rbx
je        near ptr M01_L21
mov       rdi,[rcx]
mov       rdx,rdi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       rax,[rax+40]
test      rax,rax
je        near ptr M01_L05
M01_L00
 
mov       rcx,rax
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,rsi
call      qword ptr [7FFF54D8F2A0]; System.Collections.Generic.SortedDictionary`2+KeyValuePairComparer[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1)
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+48]
test      rcx,rcx
je        near ptr M01_L06
M01_L01
 
mov       rdx,rbx
call      qword ptr [7FFF540C4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L22
M01_L02
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L07
M01_L03
 
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,r14
call      qword ptr [7FFF54E34750]; System.Collections.Generic.SortedSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1>)
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+58]
test      r11,r11
je        short M01_L08
M01_L04
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       short M01_L09
M01_L05
 
mov       rcx,rdx
mov       rdx,7FFF54D9FEE0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
jmp       near ptr M01_L00
M01_L06
 
mov       rcx,rdi
mov       rdx,7FFF54D9FEF8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L01
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFF54E501B0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L03
M01_L08
 
mov       rcx,rdi
mov       rdx,7FFF54E501D0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L04
M01_L09
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M01_L12
M01_L10
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+60]
test      r11,r11
je        near ptr M01_L17
M01_L11
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,[rbp+10]
mov       rdx,[rcx+18]
vmovdqu   xmm0,xmmword ptr [rbp-40]
vmovdqu   xmmword ptr [rbp-50],xmm0
mov       rcx,rdx
lea       rdx,[rbp-50]
cmp       [rcx],ecx
call      qword ptr [7FFF54DAB168]; System.Collections.Generic.TreeSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]].AddIfNotPresent(System.Collections.Generic.KeyValuePair`2)
mov       rax,[rbp-58]
M01_L12
 
cmp       rsi,r15
jne       short M01_L15
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M01_L18
M01_L13
 
mov       ecx,[r14+0C]
mov       rbx,[r14]
cmp       ecx,[rbx+38]
jae       short M01_L16
mov       rdx,[rbx+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L14
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L13
mov       rdx,[rcx]
mov       rbx,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,rbx
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L10
M01_L14
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L15
 
mov       rcx,rax
mov       r11,7FFF53F81A40
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L10
mov       rax,[rbp-58]
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp-58]
mov       ecx,[rbx+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       short M01_L19
M01_L17
 
mov       rcx,rdi
mov       rdx,7FFF54E501F0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L11
M01_L18
 
call      qword ptr [7FFF54435E00]
int       3
M01_L19
 
cmp       rsi,r15
jne       near ptr M01_L27
M01_L20
 
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L21
 
mov       ecx,7ED
mov       rdx,7FFF54420658
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFF542B6790]
int       3
M01_L22
 
mov       r15,[rsi+18]
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rdi
mov       rdx,7FFF54D9FEE0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L24
 
mov       rdx,[r15+10]
call      qword ptr [7FFF540C4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
test      rax,rax
je        near ptr M01_L02
mov       rcx,[rax+8]
mov       rdx,[r14+8]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L02
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L25
jmp       short M01_L26
M01_L25
 
mov       rcx,rdi
mov       rdx,7FFF54E501B0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L26
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rdx,[rsi+18]
mov       rcx,rbx
mov       r8,r14
call      qword ptr [7FFF54E34780]
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L27
 
mov       rcx,rax
mov       r11,7FFF53F81A48
call      qword ptr [r11]
jmp       near ptr M01_L20
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M01_L28
mov       rax,[rbp-58]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L28
mov       rcx,rax
mov       r11,7FFF53F81A48
call      qword ptr [r11]
M01_L28
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF54175B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF54175B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFF54435D58]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,2C220940008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.TryGetValue()
push      rsi
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rcx,[rbx+280]
mov       rdx,[rbx+290]
cmp       [rcx],cl
call      qword ptr [7FFF540DEE68]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FindValue(System.__Canon)
test      rax,rax
je        short M00_L01
mov       rsi,[rax]
M00_L00
 
mov       [rsp+20],rsi
mov       rsi,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rsi+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rsi+8],rax
add       rsp,28
pop       rbx
pop       rsi
ret
M00_L01
 
xor       esi,esi
jmp       short M00_L00
 
System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FindValue(System.__Canon)
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       [rsp+20],rcx
mov       rbx,rcx
mov       rsi,rdx
test      rsi,rsi
je        near ptr M01_L08
cmp       qword ptr [rbx+8],0
je        near ptr M01_L07
mov       rdi,[rbx+18]
mov       rcx,[rbx]
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       r11,[rdx+68]
test      r11,r11
je        short M01_L00
jmp       short M01_L01
M01_L00
 
mov       rdx,7FFF54B862D0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L01
 
mov       rcx,rdi
mov       rdx,rsi
call      qword ptr [r11]
mov       ebp,eax
mov       rcx,[rbx+8]
mov       edx,ebp
imul      rdx,[rbx+30]
shr       rdx,20
inc       rdx
mov       eax,[rcx+8]
mov       r8d,eax
imul      rdx,r8
shr       rdx,20
cmp       edx,eax
jae       near ptr M01_L10
mov       edx,edx
mov       r14d,[rcx+rdx*4+10]
mov       r15,[rbx+10]
xor       r13d,r13d
dec       r14d
M01_L02
 
mov       r12d,[r15+8]
cmp       r12d,r14d
jbe       short M01_L07
mov       ecx,r14d
lea       rcx,[rcx+rcx*2]
lea       r14,[r15+rcx*8+10]
cmp       [r14+10],ebp
jne       short M01_L06
mov       rcx,[rbx]
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       r11,[rdx+70]
test      r11,r11
je        short M01_L03
jmp       short M01_L04
M01_L03
 
mov       rdx,offset System.Runtime.InteropServices.MemoryMarshal.GetReference[TFrom](System.ReadOnlySpan`1)
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L04
 
mov       rdx,[r14]
mov       rcx,rdi
mov       r8,rsi
call      qword ptr [r11]
test      eax,eax
je        short M01_L06
lea       rax,[r14+8]
M01_L05
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M01_L06
 
mov       r14d,[r14+14]
inc       r13d
cmp       r12d,r13d
jb        short M01_L09
jmp       short M01_L02
M01_L07
 
xor       eax,eax
jmp       short M01_L05
M01_L08
 
mov       ecx,4
call      qword ptr [7FFF54445B18]
int       3
M01_L09
 
call      qword ptr [7FFF54445E48]
int       3
M01_L10
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.TryGetValue()
push      rsi
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rcx,[rbx+280]
mov       rdx,[rbx+290]
cmp       [rcx],cl
call      qword ptr [7FFF540DEE68]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FindValue(System.__Canon)
test      rax,rax
je        short M00_L01
mov       rsi,[rax]
M00_L00
 
mov       [rsp+20],rsi
mov       rsi,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rsi+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rsi+8],rax
add       rsp,28
pop       rbx
pop       rsi
ret
M00_L01
 
xor       esi,esi
jmp       short M00_L00
 
System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FindValue(System.__Canon)
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       [rsp+20],rcx
mov       rbx,rcx
mov       rsi,rdx
test      rsi,rsi
je        near ptr M01_L08
cmp       qword ptr [rbx+8],0
je        near ptr M01_L06
mov       rdi,[rbx+18]
mov       rcx,[rbx]
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       r11,[rdx+68]
test      r11,r11
je        near ptr M01_L04
M01_L00
 
mov       rcx,rdi
mov       rdx,rsi
call      qword ptr [r11]
mov       ebp,eax
mov       rcx,[rbx+8]
mov       edx,ebp
imul      rdx,[rbx+30]
shr       rdx,20
inc       rdx
mov       eax,[rcx+8]
mov       r8d,eax
imul      rdx,r8
shr       rdx,20
cmp       edx,eax
jae       near ptr M01_L09
mov       edx,edx
mov       r14d,[rcx+rdx*4+10]
mov       r15,[rbx+10]
xor       r13d,r13d
dec       r14d
M01_L01
 
mov       r12d,[r15+8]
cmp       r12d,r14d
jbe       short M01_L06
mov       ecx,r14d
lea       rcx,[rcx+rcx*2]
lea       r14,[r15+rcx*8+10]
cmp       [r14+10],ebp
jne       short M01_L07
mov       rcx,[rbx]
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       r11,[rdx+70]
test      r11,r11
je        short M01_L05
M01_L02
 
mov       rdx,[r14]
mov       rcx,rdi
mov       r8,rsi
call      qword ptr [r11]
test      eax,eax
je        short M01_L07
lea       rax,[r14+8]
M01_L03
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M01_L04
 
mov       rdx,7FFF54B881C8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L00
M01_L05
 
mov       rdx,7FFF54B881E0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L02
M01_L06
 
xor       eax,eax
jmp       short M01_L03
M01_L07
 
mov       r14d,[r14+14]
inc       r13d
cmp       r12d,r13d
jae       near ptr M01_L01
call      qword ptr [7FFF54445E48]
int       3
M01_L08
 
mov       ecx,4
call      qword ptr [7FFF54445B18]
int       3
M01_L09
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.TryGetValue()
push      rsi
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rcx,[rbx+280]
mov       rdx,[rbx+290]
cmp       [rcx],cl
call      qword ptr [7FFF540EEE68]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FindValue(System.__Canon)
test      rax,rax
je        short M00_L01
mov       rsi,[rax]
M00_L00
 
mov       [rsp+20],rsi
mov       rsi,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rsi+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rsi+8],rax
add       rsp,28
pop       rbx
pop       rsi
ret
M00_L01
 
xor       esi,esi
jmp       short M00_L00
 
System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FindValue(System.__Canon)
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       [rsp+20],rcx
mov       rbx,rcx
mov       rsi,rdx
test      rsi,rsi
je        near ptr M01_L08
cmp       qword ptr [rbx+8],0
je        near ptr M01_L06
mov       rdi,[rbx+18]
mov       rcx,[rbx]
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       r11,[rdx+68]
test      r11,r11
je        near ptr M01_L04
M01_L00
 
mov       rcx,rdi
mov       rdx,rsi
call      qword ptr [r11]
mov       ebp,eax
mov       rcx,[rbx+8]
mov       edx,ebp
imul      rdx,[rbx+30]
shr       rdx,20
inc       rdx
mov       eax,[rcx+8]
mov       r8d,eax
imul      rdx,r8
shr       rdx,20
cmp       edx,eax
jae       near ptr M01_L09
mov       edx,edx
mov       r14d,[rcx+rdx*4+10]
mov       r15,[rbx+10]
xor       r13d,r13d
dec       r14d
M01_L01
 
mov       r12d,[r15+8]
cmp       r12d,r14d
jbe       short M01_L06
mov       ecx,r14d
lea       rcx,[rcx+rcx*2]
lea       r14,[r15+rcx*8+10]
cmp       [r14+10],ebp
jne       short M01_L07
mov       rcx,[rbx]
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       r11,[rdx+70]
test      r11,r11
je        short M01_L05
M01_L02
 
mov       rdx,[r14]
mov       rcx,rdi
mov       r8,rsi
call      qword ptr [r11]
test      eax,eax
je        short M01_L07
lea       rax,[r14+8]
M01_L03
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M01_L04
 
mov       rdx,7FFF54B981C8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L00
M01_L05
 
mov       rdx,7FFF54B981E0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L02
M01_L06
 
xor       eax,eax
jmp       short M01_L03
M01_L07
 
mov       r14d,[r14+14]
inc       r13d
cmp       r12d,r13d
jae       near ptr M01_L01
call      qword ptr [7FFF54455E48]
int       3
M01_L08
 
mov       ecx,4
call      qword ptr [7FFF54455B18]
int       3
M01_L09
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.TryGetValue()
push      rsi
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rcx,[rbx+280]
mov       rdx,[rbx+290]
cmp       [rcx],cl
call      qword ptr [7FFF5410EE68]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FindValue(System.__Canon)
test      rax,rax
je        short M00_L01
mov       rsi,[rax]
M00_L00
 
mov       [rsp+20],rsi
mov       rsi,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rsi+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rsi+8],rax
add       rsp,28
pop       rbx
pop       rsi
ret
M00_L01
 
xor       esi,esi
jmp       short M00_L00
 
System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FindValue(System.__Canon)
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       [rsp+20],rcx
mov       rbx,rcx
mov       rsi,rdx
test      rsi,rsi
je        near ptr M01_L08
cmp       qword ptr [rbx+8],0
je        near ptr M01_L07
mov       rdi,[rbx+18]
mov       rcx,[rbx]
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       r11,[rdx+68]
test      r11,r11
je        short M01_L00
jmp       short M01_L01
M01_L00
 
mov       rdx,7FFF54BB81C8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L01
 
mov       rcx,rdi
mov       rdx,rsi
call      qword ptr [r11]
mov       ebp,eax
mov       rcx,[rbx+8]
mov       edx,ebp
imul      rdx,[rbx+30]
shr       rdx,20
inc       rdx
mov       eax,[rcx+8]
mov       r8d,eax
imul      rdx,r8
shr       rdx,20
cmp       edx,eax
jae       near ptr M01_L10
mov       edx,edx
mov       r14d,[rcx+rdx*4+10]
mov       r15,[rbx+10]
xor       r13d,r13d
dec       r14d
mov       r12d,[r15+8]
cmp       r12d,r14d
jbe       short M01_L07
M01_L02
 
mov       ecx,r14d
lea       rcx,[rcx+rcx*2]
lea       r14,[r15+rcx*8+10]
cmp       [r14+10],ebp
jne       short M01_L06
mov       rcx,[rbx]
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       r11,[rdx+70]
test      r11,r11
je        short M01_L03
jmp       short M01_L04
M01_L03
 
mov       rdx,7FFF54BB81E0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L04
 
mov       rdx,[r14]
mov       rcx,rdi
mov       r8,rsi
call      qword ptr [r11]
test      eax,eax
je        short M01_L06
lea       rax,[r14+8]
M01_L05
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M01_L06
 
mov       r14d,[r14+14]
inc       r13d
cmp       r12d,r13d
jb        short M01_L09
mov       r12d,[r15+8]
cmp       r12d,r14d
ja        short M01_L02
M01_L07
 
xor       eax,eax
jmp       short M01_L05
M01_L08
 
mov       ecx,4
call      qword ptr [7FFF54475B18]
int       3
M01_L09
 
call      qword ptr [7FFF54475E48]
int       3
M01_L10
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.TryGetValue()
push      rsi
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rcx,[rbx+280]
mov       rdx,[rbx+290]
cmp       [rcx],cl
call      qword ptr [7FFF540EEE68]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FindValue(System.__Canon)
test      rax,rax
je        short M00_L01
mov       rsi,[rax]
M00_L00
 
mov       [rsp+20],rsi
mov       rsi,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rsi+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rsi+8],rax
add       rsp,28
pop       rbx
pop       rsi
ret
M00_L01
 
xor       esi,esi
jmp       short M00_L00
 
System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FindValue(System.__Canon)
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       [rsp+20],rcx
mov       rbx,rcx
mov       rsi,rdx
test      rsi,rsi
je        near ptr M01_L08
cmp       qword ptr [rbx+8],0
je        near ptr M01_L06
mov       rdi,[rbx+18]
mov       rcx,[rbx]
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       r11,[rdx+68]
test      r11,r11
je        short M01_L00
jmp       short M01_L01
M01_L00
 
mov       rdx,7FFF54B98768
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L01
 
mov       rcx,rdi
mov       rdx,rsi
call      qword ptr [r11]
mov       ebp,eax
mov       rcx,[rbx+8]
mov       edx,ebp
imul      rdx,[rbx+30]
shr       rdx,20
inc       rdx
mov       eax,[rcx+8]
mov       r8d,eax
imul      rdx,r8
shr       rdx,20
cmp       edx,eax
jae       near ptr M01_L09
mov       edx,edx
mov       r14d,[rcx+rdx*4+10]
mov       r15,[rbx+10]
xor       r13d,r13d
dec       r14d
M01_L02
 
mov       r12d,[r15+8]
cmp       r12d,r14d
jbe       short M01_L06
mov       ecx,r14d
lea       rcx,[rcx+rcx*2]
lea       r14,[r15+rcx*8+10]
cmp       [r14+10],ebp
jne       short M01_L07
mov       rcx,[rbx]
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       r11,[rdx+70]
test      r11,r11
je        short M01_L03
jmp       short M01_L04
M01_L03
 
mov       rdx,7FFF54B98780
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L04
 
mov       rdx,[r14]
mov       rcx,rdi
mov       r8,rsi
call      qword ptr [r11]
test      eax,eax
je        short M01_L07
lea       rax,[r14+8]
M01_L05
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M01_L06
 
xor       eax,eax
jmp       short M01_L05
M01_L07
 
mov       r14d,[r14+14]
inc       r13d
cmp       r12d,r13d
jae       short M01_L02
call      qword ptr [7FFF54455E48]
int       3
M01_L08
 
mov       ecx,4
call      qword ptr [7FFF54455B18]
int       3
M01_L09
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.TryGetValue()
push      rsi
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rcx,[rbx+280]
mov       rdx,[rbx+290]
cmp       [rcx],cl
call      qword ptr [7FFF540DEE68]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FindValue(System.__Canon)
test      rax,rax
je        short M00_L01
mov       rsi,[rax]
M00_L00
 
mov       [rsp+20],rsi
mov       rsi,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rsi+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rsi+8],rax
add       rsp,28
pop       rbx
pop       rsi
ret
M00_L01
 
xor       esi,esi
jmp       short M00_L00
 
System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FindValue(System.__Canon)
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       [rsp+20],rcx
mov       rbx,rcx
mov       rsi,rdx
test      rsi,rsi
je        near ptr M01_L08
cmp       qword ptr [rbx+8],0
je        near ptr M01_L06
mov       rdi,[rbx+18]
mov       rcx,[rbx]
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       r11,[rdx+60]
test      r11,r11
je        short M01_L00
jmp       short M01_L01
M01_L00
 
mov       rdx,7FFF54B056D0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L01
 
mov       rcx,rdi
mov       rdx,rsi
call      qword ptr [r11]
mov       ebp,eax
mov       rcx,[rbx+8]
mov       edx,ebp
imul      rdx,[rbx+30]
shr       rdx,20
inc       rdx
mov       eax,[rcx+8]
mov       r8d,eax
imul      rdx,r8
shr       rdx,20
cmp       edx,eax
jae       near ptr M01_L09
mov       edx,edx
mov       r14d,[rcx+rdx*4+10]
mov       r15,[rbx+10]
xor       r13d,r13d
dec       r14d
M01_L02
 
mov       r12d,[r15+8]
cmp       r12d,r14d
jbe       short M01_L06
mov       ecx,r14d
lea       rcx,[rcx+rcx*2]
lea       r14,[r15+rcx*8+10]
cmp       [r14+10],ebp
jne       short M01_L07
mov       rcx,[rbx]
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       r11,[rdx+68]
test      r11,r11
je        short M01_L03
jmp       short M01_L04
M01_L03
 
mov       rdx,7FFF54B056E8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L04
 
mov       rdx,[r14]
mov       rcx,rdi
mov       r8,rsi
call      qword ptr [r11]
test      eax,eax
je        short M01_L07
lea       rax,[r14+8]
M01_L05
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M01_L06
 
xor       eax,eax
jmp       short M01_L05
M01_L07
 
mov       r14d,[r14+14]
inc       r13d
cmp       r12d,r13d
jae       short M01_L02
call      qword ptr [7FFF54445E48]
int       3
M01_L08
 
mov       ecx,4
call      qword ptr [7FFF54445B18]
int       3
M01_L09
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.TryGetValue()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rcx,[rbx+280]
mov       rdx,[rbx+290]
cmp       [rcx],cl
call      qword ptr [7FFF540DEE68]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FindValue(System.__Canon)
test      rax,rax
je        short M00_L01
mov       rcx,[rax]
M00_L00
 
mov       [rsp+28],rcx
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
M00_L01
 
xor       ecx,ecx
jmp       short M00_L00
 
System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FindValue(System.__Canon)
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       [rsp+20],rcx
mov       rbx,rcx
mov       rsi,rdx
test      rsi,rsi
je        near ptr M01_L08
cmp       qword ptr [rbx+8],0
je        near ptr M01_L07
mov       rdi,[rbx+18]
mov       rcx,[rbx]
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       r11,[rdx+60]
test      r11,r11
je        short M01_L00
jmp       short M01_L01
M01_L00
 
mov       rdx,7FFF5490FCA0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L01
 
mov       rcx,rdi
mov       rdx,rsi
call      qword ptr [r11]
mov       ebp,eax
mov       rcx,[rbx+8]
mov       edx,ebp
imul      rdx,[rbx+30]
shr       rdx,20
inc       rdx
mov       eax,[rcx+8]
mov       r8d,eax
imul      rdx,r8
shr       rdx,20
cmp       edx,eax
jae       near ptr M01_L10
mov       edx,edx
mov       r14d,[rcx+rdx*4+10]
mov       r15,[rbx+10]
xor       r13d,r13d
dec       r14d
M01_L02
 
mov       r12d,[r15+8]
cmp       r12d,r14d
jbe       short M01_L07
mov       ecx,r14d
lea       rcx,[rcx+rcx*2]
lea       r14,[r15+rcx*8+10]
cmp       [r14+10],ebp
jne       short M01_L06
mov       rcx,[rbx]
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       r11,[rdx+68]
test      r11,r11
je        short M01_L03
jmp       short M01_L04
M01_L03
 
mov       rdx,7FFF5490FCB8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L04
 
mov       rdx,[r14]
mov       rcx,rdi
mov       r8,rsi
call      qword ptr [r11]
test      eax,eax
je        short M01_L06
lea       rax,[r14+8]
M01_L05
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M01_L06
 
mov       r14d,[r14+14]
inc       r13d
cmp       r12d,r13d
jb        short M01_L09
jmp       short M01_L02
M01_L07
 
xor       eax,eax
jmp       short M01_L05
M01_L08
 
mov       ecx,4
call      qword ptr [7FFF54445B18]
int       3
M01_L09
 
call      qword ptr [7FFF54445E48]
int       3
M01_L10
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.TryGetValue()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rcx,[rbx+280]
mov       rdx,[rbx+290]
cmp       [rcx],cl
call      qword ptr [7FFF540DEE68]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FindValue(System.__Canon)
test      rax,rax
je        short M00_L01
mov       rcx,[rax]
M00_L00
 
mov       [rsp+28],rcx
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
M00_L01
 
xor       ecx,ecx
jmp       short M00_L00
 
System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FindValue(System.__Canon)
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       [rsp+20],rcx
mov       rbx,rcx
mov       rsi,rdx
test      rsi,rsi
je        near ptr M01_L08
cmp       qword ptr [rbx+8],0
je        near ptr M01_L07
mov       rdi,[rbx+18]
mov       rcx,[rbx]
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       r11,[rdx+60]
test      r11,r11
je        short M01_L00
jmp       short M01_L01
M01_L00
 
mov       rdx,7FFF5490FC20
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L01
 
mov       rcx,rdi
mov       rdx,rsi
call      qword ptr [r11]
mov       ebp,eax
mov       rcx,[rbx+8]
mov       edx,ebp
imul      rdx,[rbx+30]
shr       rdx,20
inc       rdx
mov       eax,[rcx+8]
mov       r8d,eax
imul      rdx,r8
shr       rdx,20
cmp       edx,eax
jae       near ptr M01_L10
mov       edx,edx
mov       r14d,[rcx+rdx*4+10]
mov       r15,[rbx+10]
xor       r13d,r13d
dec       r14d
M01_L02
 
mov       r12d,[r15+8]
cmp       r12d,r14d
jbe       short M01_L07
mov       ecx,r14d
lea       rcx,[rcx+rcx*2]
lea       r14,[r15+rcx*8+10]
cmp       [r14+10],ebp
jne       short M01_L06
mov       rcx,[rbx]
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       r11,[rdx+68]
test      r11,r11
je        short M01_L03
jmp       short M01_L04
M01_L03
 
mov       rdx,7FFF5490FC38
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L04
 
mov       rdx,[r14]
mov       rcx,rdi
mov       r8,rsi
call      qword ptr [r11]
test      eax,eax
je        short M01_L06
lea       rax,[r14+8]
M01_L05
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M01_L06
 
mov       r14d,[r14+14]
inc       r13d
cmp       r12d,r13d
jb        short M01_L09
jmp       short M01_L02
M01_L07
 
xor       eax,eax
jmp       short M01_L05
M01_L08
 
mov       ecx,4
call      qword ptr [7FFF54445B18]
int       3
M01_L09
 
call      qword ptr [7FFF54445E48]
int       3
M01_L10
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.UpsertDictionary01()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,48
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
mov       [rsp+40],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
lea       rcx,[rsp+30]
lea       r9,[rsp+40]
mov       r8,rsi
mov       rdx,offset MD_System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>>, Boolean ByRef)
call      qword ptr [7FFF54B27150]; System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, Boolean ByRef)
cmp       byte ptr [rsp+40],0
je        near ptr M00_L02
mov       rdi,[rsp+30]
mov       rbp,[rsp+38]
test      rbp,rbp
je        short M00_L01
xor       ecx,ecx
test      rdi,rdi
setne     cl
test      ecx,ecx
je        short M00_L03
test      rsi,rsi
je        near ptr M00_L04
mov       rcx,rsi
mov       rdx,rdi
mov       r11,7FFF53F910E0
call      qword ptr [r11]
test      eax,eax
je        short M00_L00
mov       rcx,rsi
mov       rdx,rdi
mov       r11,7FFF53F910F0
call      qword ptr [r11]
M00_L00
 
mov       rcx,rsi
mov       r8,rbp
mov       rdx,rdi
mov       r11,7FFF53F910E8
call      qword ptr [r11]
M00_L01
 
mov       [rsp+28],rsi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,48
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L02
 
call      qword ptr [7FFF54447A98]
int       3
M00_L03
 
call      qword ptr [7FFF546644C8]
mov       ecx,1B3
mov       rdx,7FFF545DA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54466D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540D6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545DA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540D6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546642B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542C6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L04
 
call      qword ptr [7FFF546644C8]
mov       ecx,43
mov       rdx,7FFF545DA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54466D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540D6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545DA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540D6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546642B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542C6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, Boolean ByRef)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,48
lea       rbp,[rsp+70]
xor       eax,eax
mov       [rbp-40],rax
mov       [rbp-38],rax
mov       [rbp-50],rsp
mov       [rbp-30],rdx
mov       [rbp+10],rcx
mov       [rbp+28],r9
mov       rbx,rdx
mov       rsi,r8
test      rsi,rsi
je        near ptr M01_L21
mov       rcx,[rbx+10]
mov       rcx,[rcx+10]
test      rcx,rcx
je        short M01_L03
M01_L00
 
mov       rdx,rsi
call      qword ptr [7FFF540D4348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       rdi,rax
test      rdi,rdi
jne       near ptr M01_L22
mov       rcx,[rbx+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L04
M01_L01
 
mov       rdx,rsi
call      qword ptr [7FFF540D4348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       r14,rax
test      r14,r14
jne       near ptr M01_L25
mov       rcx,[rbx+10]
mov       r11,[rcx+20]
test      r11,r11
je        short M01_L05
M01_L02
 
mov       rcx,rsi
call      qword ptr [r11]
mov       [rbp-48],rax
jmp       short M01_L06
M01_L03
 
mov       rcx,rbx
mov       rdx,7FFF54B1A630
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
jmp       short M01_L00
M01_L04
 
mov       rcx,rbx
mov       rdx,7FFF54B1A640
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
jmp       short M01_L01
M01_L05
 
mov       rcx,rbx
mov       rdx,7FFF54B1A650
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       short M01_L02
M01_L06
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
jne       short M01_L09
lea       rdi,[rax+8]
mov       ecx,[rdi+8]
mov       rdx,[rdi]
cmp       ecx,[rdx+44]
jne       near ptr M01_L14
M01_L07
 
mov       rax,[rbp-48]
mov       ecx,[rdi+0C]
mov       r14,[rdi]
cmp       ecx,[r14+38]
jae       near ptr M01_L17
mov       rdx,[r14+10]
lea       r8d,[rcx+1]
mov       [rdi+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L08
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L07
mov       rdx,[rcx]
mov       r14,[rcx+8]
lea       rcx,[rdi+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-48]
jmp       short M01_L11
M01_L08
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L09
 
mov       rcx,rax
mov       r11,7FFF53F910F8
call      qword ptr [r11]
mov       ecx,eax
mov       rax,[rbp-48]
M01_L10
 
test      ecx,ecx
je        near ptr M01_L31
M01_L11
 
mov       rcx,[rbx+10]
mov       r11,[rcx+28]
test      r11,r11
je        short M01_L15
M01_L12
 
lea       rdx,[rbp-40]
mov       rcx,rax
call      qword ptr [r11]
cmp       rsi,r15
jne       short M01_L16
mov       rcx,[rbp-48]
lea       rdi,[rcx+8]
mov       edx,[rdi+8]
mov       rax,[rdi]
cmp       edx,[rax+44]
jne       short M01_L14
M01_L13
 
mov       edx,[rdi+0C]
mov       rax,[rdi]
mov       r14d,[rax+38]
cmp       edx,r14d
jb        short M01_L18
inc       r14d
mov       [rdi+0C],r14d
xor       r11d,r11d
mov       [rdi+18],r11
mov       [rdi+20],r11
mov       rcx,[rbp-48]
jmp       near ptr M01_L19
M01_L14
 
call      qword ptr [7FFF54445E00]
int       3
M01_L15
 
mov       rcx,rbx
mov       rdx,7FFF54B1A668
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
mov       rax,[rbp-48]
jmp       short M01_L12
M01_L16
 
mov       rcx,[rbp-48]
mov       r11,7FFF53F91100
call      qword ptr [r11]
test      eax,eax
mov       rax,[rbp-48]
jne       near ptr M01_L11
mov       rcx,rax
jmp       short M01_L19
M01_L17
 
mov       ecx,[r14+38]
inc       ecx
mov       [rdi+0C],ecx
xor       ecx,ecx
mov       [rdi+18],rcx
mov       [rdi+20],rcx
jmp       near ptr M01_L10
M01_L18
 
mov       rax,[rax+10]
lea       r8d,[rdx+1]
mov       [rdi+0C],r8d
cmp       edx,[rax+8]
jae       near ptr M01_L08
mov       edx,edx
lea       rdx,[rdx+rdx*2]
lea       rdx,[rax+rdx*8+10]
cmp       dword ptr [rdx+14],0FFFFFFFF
jl        near ptr M01_L13
mov       rax,[rdx]
mov       r14,[rdx+8]
lea       rcx,[rdi+18]
mov       rdx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-48]
jmp       near ptr M01_L11
M01_L19
 
mov       r8,[rbp+28]
mov       byte ptr [r8],1
mov       rdi,[rbp-40]
mov       r14,[rbp-38]
cmp       rsi,r15
jne       near ptr M01_L30
M01_L20
 
mov       rcx,[rbp+10]
mov       rdx,rdi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rcx,[rbp+10]
lea       rcx,[rcx+8]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L21
 
mov       ecx,10
call      qword ptr [7FFF54447A38]
int       3
M01_L22
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],40
jle       short M01_L23
mov       r11,[rcx+40]
test      r11,r11
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rbx
mov       rdx,7FFF54B1A738
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L24
 
mov       rcx,rdi
mov       rdx,[rbp+10]
mov       r8,[rbp+28]
call      qword ptr [r11]
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L25
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],30
jle       short M01_L26
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L26
jmp       short M01_L27
M01_L26
 
mov       rcx,rbx
mov       rdx,7FFF54B1A708
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L27
 
mov       rcx,r14
call      qword ptr [r11]
mov       esi,eax
test      esi,esi
jle       short M01_L32
mov       r8,[rbp+28]
mov       byte ptr [r8],1
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],38
jle       short M01_L28
mov       r11,[rcx+38]
test      r11,r11
je        short M01_L28
jmp       short M01_L29
M01_L28
 
mov       rcx,rbx
mov       rdx,7FFF54B1A720
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L29
 
lea       r8d,[rsi-1]
mov       rcx,r14
mov       rdx,[rbp+10]
call      qword ptr [r11]
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L30
 
mov       r11,7FFF53F91108
call      qword ptr [r11]
jmp       near ptr M01_L20
M01_L31
 
mov       rcx,rsp
call      M01_L33
nop
M01_L32
 
mov       r8,[rbp+28]
mov       byte ptr [r8],0
xor       eax,eax
mov       rdx,[rbp+10]
mov       [rdx],rax
mov       [rdx+8],rax
mov       rax,rdx
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L33
 
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+70]
cmp       qword ptr [rbp-48],0
je        short M01_L34
mov       rax,[rbp-48]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L34
mov       rcx,rax
mov       r11,7FFF53F91108
call      qword ptr [r11]
M01_L34
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF54185B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF54185B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFF54445D58]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,2824BE10008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.UpsertDictionary01()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,48
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
mov       [rsp+40],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
lea       rcx,[rsp+30]
lea       r9,[rsp+40]
mov       r8,rsi
mov       rdx,offset MD_System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>>, Boolean ByRef)
call      qword ptr [7FFF54B3CA68]; System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, Boolean ByRef)
cmp       byte ptr [rsp+40],0
je        near ptr M00_L02
mov       rdi,[rsp+30]
mov       rbp,[rsp+38]
test      rbp,rbp
je        short M00_L01
xor       ecx,ecx
test      rdi,rdi
setne     cl
test      ecx,ecx
je        short M00_L03
test      rsi,rsi
je        near ptr M00_L04
mov       rcx,rsi
mov       rdx,rdi
mov       r11,7FFF53FA10E0
call      qword ptr [r11]
test      eax,eax
je        short M00_L00
mov       rcx,rsi
mov       rdx,rdi
mov       r11,7FFF53FA10F0
call      qword ptr [r11]
M00_L00
 
mov       rcx,rsi
mov       r8,rbp
mov       rdx,rdi
mov       r11,7FFF53FA10E8
call      qword ptr [r11]
M00_L01
 
mov       [rsp+28],rsi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,48
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L02
 
call      qword ptr [7FFF54457A98]
int       3
M00_L03
 
call      qword ptr [7FFF546744C8]
mov       ecx,1B3
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54476D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546742B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542D6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L04
 
call      qword ptr [7FFF546744C8]
mov       ecx,43
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54476D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546742B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542D6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, Boolean ByRef)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,48
lea       rbp,[rsp+70]
xor       eax,eax
mov       [rbp-40],rax
mov       [rbp-38],rax
mov       [rbp-50],rsp
mov       [rbp-30],rdx
mov       [rbp+10],rcx
mov       [rbp+28],r9
mov       rbx,rdx
mov       rsi,r8
test      rsi,rsi
je        near ptr M01_L24
mov       rcx,[rbx+10]
mov       rcx,[rcx+10]
test      rcx,rcx
je        short M01_L03
M01_L00
 
mov       rdx,rsi
call      qword ptr [7FFF540E4348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       rdi,rax
test      rdi,rdi
jne       near ptr M01_L25
mov       rcx,[rbx+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L05
M01_L01
 
mov       rdx,rsi
call      qword ptr [7FFF540E4348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       r14,rax
test      r14,r14
jne       near ptr M01_L28
mov       rcx,[rbx+10]
mov       r11,[rcx+20]
test      r11,r11
je        short M01_L06
M01_L02
 
mov       rcx,rsi
call      qword ptr [r11]
mov       [rbp-48],rax
jmp       short M01_L07
M01_L03
 
mov       rcx,rbx
mov       rdx,7FFF54B1C4E8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
jmp       short M01_L00
M01_L04
 
mov       rcx,[rbp+10]
mov       rdx,rdi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rcx,[rbp+10]
lea       rcx,[rcx+8]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L05
 
mov       rcx,rbx
mov       rdx,7FFF54B1C4F8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
jmp       near ptr M01_L01
M01_L06
 
mov       rcx,rbx
mov       rdx,7FFF54B1C508
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L02
M01_L07
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
jne       short M01_L10
lea       rdi,[rax+8]
mov       ecx,[rdi+8]
mov       rdx,[rdi]
cmp       ecx,[rdx+44]
jne       near ptr M01_L17
M01_L08
 
mov       rax,[rbp-48]
mov       ecx,[rdi+0C]
mov       r14,[rdi]
cmp       ecx,[r14+38]
jae       near ptr M01_L20
mov       rdx,[r14+10]
lea       r8d,[rcx+1]
mov       [rdi+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L09
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L08
mov       rdx,[rcx]
mov       r14,[rcx+8]
lea       rcx,[rdi+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-48]
jmp       short M01_L12
M01_L09
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L10
 
mov       rcx,rax
mov       r11,7FFF53FA10F8
call      qword ptr [r11]
mov       ecx,eax
mov       rax,[rbp-48]
M01_L11
 
test      ecx,ecx
je        near ptr M01_L22
M01_L12
 
mov       rcx,[rbx+10]
mov       r11,[rcx+28]
test      r11,r11
je        near ptr M01_L18
M01_L13
 
lea       rdx,[rbp-40]
mov       rcx,rax
call      qword ptr [r11]
cmp       rsi,r15
jne       short M01_L15
mov       rcx,[rbp-48]
lea       rdi,[rcx+8]
mov       edx,[rdi+8]
mov       rax,[rdi]
cmp       edx,[rax+44]
jne       near ptr M01_L17
M01_L14
 
mov       edx,[rdi+0C]
mov       r14,[rdi]
cmp       edx,[r14+38]
jae       short M01_L16
mov       rax,[r14+10]
lea       r8d,[rdx+1]
mov       [rdi+0C],r8d
cmp       edx,[rax+8]
jae       short M01_L09
mov       edx,edx
lea       rdx,[rdx+rdx*2]
lea       rdx,[rax+rdx*8+10]
cmp       dword ptr [rdx+14],0FFFFFFFF
jl        short M01_L14
mov       rax,[rdx]
mov       r14,[rdx+8]
lea       rcx,[rdi+18]
mov       rdx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-48]
jmp       near ptr M01_L12
M01_L15
 
mov       rcx,[rbp-48]
mov       r11,7FFF53FA1100
call      qword ptr [r11]
test      eax,eax
mov       rax,[rbp-48]
jne       near ptr M01_L12
mov       rcx,rax
jmp       short M01_L19
M01_L16
 
mov       r11d,[r14+38]
inc       r11d
mov       [rdi+0C],r11d
xor       r11d,r11d
mov       [rdi+18],r11
mov       [rdi+20],r11
mov       rcx,[rbp-48]
jmp       short M01_L19
M01_L17
 
call      qword ptr [7FFF54455E00]
int       3
M01_L18
 
mov       rcx,rbx
mov       rdx,7FFF54B1C520
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
mov       rax,[rbp-48]
jmp       near ptr M01_L13
M01_L19
 
mov       r8,[rbp+28]
mov       byte ptr [r8],1
mov       rdi,[rbp-40]
mov       r14,[rbp-38]
jmp       short M01_L21
M01_L20
 
mov       ecx,[r14+38]
inc       ecx
mov       [rdi+0C],ecx
xor       ecx,ecx
mov       [rdi+18],rcx
mov       [rdi+20],rcx
jmp       near ptr M01_L11
M01_L21
 
cmp       rsi,r15
je        near ptr M01_L04
mov       r11,7FFF53FA1108
call      qword ptr [r11]
jmp       near ptr M01_L04
M01_L22
 
mov       rcx,rsp
call      M01_L33
nop
M01_L23
 
mov       r8,[rbp+28]
mov       byte ptr [r8],0
xor       eax,eax
mov       rdx,[rbp+10]
mov       [rdx],rax
mov       [rdx+8],rax
mov       rax,rdx
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L24
 
mov       ecx,10
call      qword ptr [7FFF54457A38]
int       3
M01_L25
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],40
jle       short M01_L26
mov       r11,[rcx+40]
test      r11,r11
je        short M01_L26
jmp       short M01_L27
M01_L26
 
mov       rcx,rbx
mov       rdx,7FFF54B1C5F0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L27
 
mov       rcx,rdi
mov       rdx,[rbp+10]
mov       r8,[rbp+28]
call      qword ptr [r11]
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L28
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],30
jle       short M01_L29
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L29
jmp       short M01_L30
M01_L29
 
mov       rcx,rbx
mov       rdx,7FFF54B1C5C0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L30
 
mov       rcx,r14
call      qword ptr [r11]
mov       esi,eax
test      esi,esi
jle       near ptr M01_L23
mov       r8,[rbp+28]
mov       byte ptr [r8],1
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],38
jle       short M01_L31
mov       r11,[rcx+38]
test      r11,r11
je        short M01_L31
jmp       short M01_L32
M01_L31
 
mov       rcx,rbx
mov       rdx,7FFF54B1C5D8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L32
 
lea       r8d,[rsi-1]
mov       rcx,r14
mov       rdx,[rbp+10]
call      qword ptr [r11]
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L33
 
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+70]
cmp       qword ptr [rbp-48],0
je        short M01_L34
mov       rax,[rbp-48]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L34
mov       rcx,rax
mov       r11,7FFF53FA1108
call      qword ptr [r11]
M01_L34
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF54195B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF54195B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFF54455D58]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,1CEDE520008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.UpsertDictionary01()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,48
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
mov       [rsp+40],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
lea       rcx,[rsp+30]
lea       r9,[rsp+40]
mov       r8,rsi
mov       rdx,offset MD_System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>>, Boolean ByRef)
call      qword ptr [7FFF54B5CA68]; System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, Boolean ByRef)
cmp       byte ptr [rsp+40],0
je        near ptr M00_L02
mov       rdi,[rsp+30]
mov       rbp,[rsp+38]
test      rbp,rbp
je        short M00_L01
xor       ecx,ecx
test      rdi,rdi
setne     cl
test      ecx,ecx
je        short M00_L03
test      rsi,rsi
je        near ptr M00_L04
mov       rcx,rsi
mov       rdx,rdi
mov       r11,7FFF53FC10E0
call      qword ptr [r11]
test      eax,eax
je        short M00_L00
mov       rcx,rsi
mov       rdx,rdi
mov       r11,7FFF53FC10F0
call      qword ptr [r11]
M00_L00
 
mov       rcx,rsi
mov       r8,rbp
mov       rdx,rdi
mov       r11,7FFF53FC10E8
call      qword ptr [r11]
M00_L01
 
mov       [rsp+28],rsi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,48
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L02
 
call      qword ptr [7FFF54477A98]
int       3
M00_L03
 
call      qword ptr [7FFF546944C8]
mov       ecx,1B3
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54496D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546942B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542F6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L04
 
call      qword ptr [7FFF546944C8]
mov       ecx,43
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54496D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF5460A408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF54106B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546942B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542F6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, Boolean ByRef)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,48
lea       rbp,[rsp+70]
xor       eax,eax
mov       [rbp-40],rax
mov       [rbp-38],rax
mov       [rbp-50],rsp
mov       [rbp-30],rdx
mov       [rbp+10],rcx
mov       [rbp+28],r9
mov       rbx,rdx
mov       rsi,r8
test      rsi,rsi
je        near ptr M01_L24
mov       rcx,[rbx+10]
mov       rcx,[rcx+10]
test      rcx,rcx
je        short M01_L03
M01_L00
 
mov       rdx,rsi
call      qword ptr [7FFF54104348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       rdi,rax
test      rdi,rdi
jne       near ptr M01_L25
mov       rcx,[rbx+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L05
M01_L01
 
mov       rdx,rsi
call      qword ptr [7FFF54104348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       r14,rax
test      r14,r14
jne       near ptr M01_L28
mov       rcx,[rbx+10]
mov       r11,[rcx+20]
test      r11,r11
je        short M01_L06
M01_L02
 
mov       rcx,rsi
call      qword ptr [r11]
mov       [rbp-48],rax
jmp       short M01_L07
M01_L03
 
mov       rcx,rbx
mov       rdx,7FFF54B3C4E8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
jmp       short M01_L00
M01_L04
 
mov       rcx,[rbp+10]
mov       rdx,rdi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rcx,[rbp+10]
lea       rcx,[rcx+8]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L05
 
mov       rcx,rbx
mov       rdx,7FFF54B3C4F8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
jmp       near ptr M01_L01
M01_L06
 
mov       rcx,rbx
mov       rdx,7FFF54B3C508
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L02
M01_L07
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
jne       short M01_L10
lea       rdi,[rax+8]
mov       ecx,[rdi+8]
mov       rdx,[rdi]
cmp       ecx,[rdx+44]
jne       near ptr M01_L17
M01_L08
 
mov       rax,[rbp-48]
mov       ecx,[rdi+0C]
mov       r14,[rdi]
cmp       ecx,[r14+38]
jae       near ptr M01_L20
mov       rdx,[r14+10]
lea       r8d,[rcx+1]
mov       [rdi+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L09
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L08
mov       rdx,[rcx]
mov       r14,[rcx+8]
lea       rcx,[rdi+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-48]
jmp       short M01_L12
M01_L09
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L10
 
mov       rcx,rax
mov       r11,7FFF53FC10F8
call      qword ptr [r11]
mov       ecx,eax
mov       rax,[rbp-48]
M01_L11
 
test      ecx,ecx
je        near ptr M01_L22
M01_L12
 
mov       rcx,[rbx+10]
mov       r11,[rcx+28]
test      r11,r11
je        near ptr M01_L18
M01_L13
 
lea       rdx,[rbp-40]
mov       rcx,rax
call      qword ptr [r11]
cmp       rsi,r15
jne       short M01_L15
mov       rcx,[rbp-48]
lea       rdi,[rcx+8]
mov       edx,[rdi+8]
mov       rax,[rdi]
cmp       edx,[rax+44]
jne       near ptr M01_L17
M01_L14
 
mov       edx,[rdi+0C]
mov       r14,[rdi]
cmp       edx,[r14+38]
jae       short M01_L16
mov       rax,[r14+10]
lea       r8d,[rdx+1]
mov       [rdi+0C],r8d
cmp       edx,[rax+8]
jae       short M01_L09
mov       edx,edx
lea       rdx,[rdx+rdx*2]
lea       rdx,[rax+rdx*8+10]
cmp       dword ptr [rdx+14],0FFFFFFFF
jl        short M01_L14
mov       rax,[rdx]
mov       r14,[rdx+8]
lea       rcx,[rdi+18]
mov       rdx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-48]
jmp       near ptr M01_L12
M01_L15
 
mov       rcx,[rbp-48]
mov       r11,7FFF53FC1100
call      qword ptr [r11]
test      eax,eax
mov       rax,[rbp-48]
jne       near ptr M01_L12
mov       rcx,rax
jmp       short M01_L19
M01_L16
 
mov       r11d,[r14+38]
inc       r11d
mov       [rdi+0C],r11d
xor       r11d,r11d
mov       [rdi+18],r11
mov       [rdi+20],r11
mov       rcx,[rbp-48]
jmp       short M01_L19
M01_L17
 
call      qword ptr [7FFF54475E00]
int       3
M01_L18
 
mov       rcx,rbx
mov       rdx,7FFF54B3C520
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
mov       rax,[rbp-48]
jmp       near ptr M01_L13
M01_L19
 
mov       r8,[rbp+28]
mov       byte ptr [r8],1
mov       rdi,[rbp-40]
mov       r14,[rbp-38]
jmp       short M01_L21
M01_L20
 
mov       ecx,[r14+38]
inc       ecx
mov       [rdi+0C],ecx
xor       ecx,ecx
mov       [rdi+18],rcx
mov       [rdi+20],rcx
jmp       near ptr M01_L11
M01_L21
 
cmp       rsi,r15
je        near ptr M01_L04
mov       r11,7FFF53FC1108
call      qword ptr [r11]
jmp       near ptr M01_L04
M01_L22
 
mov       rcx,rsp
call      M01_L33
nop
M01_L23
 
mov       r8,[rbp+28]
mov       byte ptr [r8],0
xor       eax,eax
mov       rdx,[rbp+10]
mov       [rdx],rax
mov       [rdx+8],rax
mov       rax,rdx
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L24
 
mov       ecx,10
call      qword ptr [7FFF54477A38]
int       3
M01_L25
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],40
jle       short M01_L26
mov       r11,[rcx+40]
test      r11,r11
je        short M01_L26
jmp       short M01_L27
M01_L26
 
mov       rcx,rbx
mov       rdx,7FFF54B3C5F0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L27
 
mov       rcx,rdi
mov       rdx,[rbp+10]
mov       r8,[rbp+28]
call      qword ptr [r11]
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L28
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],30
jle       short M01_L29
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L29
jmp       short M01_L30
M01_L29
 
mov       rcx,rbx
mov       rdx,7FFF54B3C5C0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L30
 
mov       rcx,r14
call      qword ptr [r11]
mov       esi,eax
test      esi,esi
jle       near ptr M01_L23
mov       r8,[rbp+28]
mov       byte ptr [r8],1
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],38
jle       short M01_L31
mov       r11,[rcx+38]
test      r11,r11
je        short M01_L31
jmp       short M01_L32
M01_L31
 
mov       rcx,rbx
mov       rdx,7FFF54B3C5D8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L32
 
lea       r8d,[rsi-1]
mov       rcx,r14
mov       rdx,[rbp+10]
call      qword ptr [r11]
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L33
 
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+70]
cmp       qword ptr [rbp-48],0
je        short M01_L34
mov       rax,[rbp-48]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L34
mov       rcx,rax
mov       r11,7FFF53FC1108
call      qword ptr [r11]
M01_L34
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF541B5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF541B5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFF54475D58]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,28385DB0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.UpsertDictionary01()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,48
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
mov       [rsp+40],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
lea       rcx,[rsp+30]
lea       r9,[rsp+40]
mov       r8,rsi
mov       rdx,offset MD_System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>>, Boolean ByRef)
call      qword ptr [7FFF54B2CA68]; System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, Boolean ByRef)
cmp       byte ptr [rsp+40],0
je        near ptr M00_L02
mov       rdi,[rsp+30]
mov       rbp,[rsp+38]
test      rbp,rbp
je        short M00_L01
xor       ecx,ecx
test      rdi,rdi
setne     cl
test      ecx,ecx
je        short M00_L03
test      rsi,rsi
je        near ptr M00_L04
mov       rcx,rsi
mov       rdx,rdi
mov       r11,7FFF53F910E0
call      qword ptr [r11]
test      eax,eax
je        short M00_L00
mov       rcx,rsi
mov       rdx,rdi
mov       r11,7FFF53F910F0
call      qword ptr [r11]
M00_L00
 
mov       rcx,rsi
mov       r8,rbp
mov       rdx,rdi
mov       r11,7FFF53F910E8
call      qword ptr [r11]
M00_L01
 
mov       [rsp+28],rsi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,48
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L02
 
call      qword ptr [7FFF54447A98]
int       3
M00_L03
 
call      qword ptr [7FFF546644C8]
mov       ecx,1B3
mov       rdx,7FFF545DA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54466D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540D6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545DA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540D6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546642B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542C6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L04
 
call      qword ptr [7FFF546644C8]
mov       ecx,43
mov       rdx,7FFF545DA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54466D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540D6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545DA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540D6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546642B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542C6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, Boolean ByRef)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,48
lea       rbp,[rsp+70]
xor       eax,eax
mov       [rbp-40],rax
mov       [rbp-38],rax
mov       [rbp-50],rsp
mov       [rbp-30],rdx
mov       [rbp+10],rcx
mov       [rbp+28],r9
mov       rbx,rdx
mov       rsi,r8
test      rsi,rsi
je        near ptr M01_L21
mov       rcx,[rbx+10]
mov       rcx,[rcx+10]
test      rcx,rcx
je        short M01_L03
M01_L00
 
mov       rdx,rsi
call      qword ptr [7FFF540D4348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       rdi,rax
test      rdi,rdi
jne       near ptr M01_L22
mov       rcx,[rbx+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L04
M01_L01
 
mov       rdx,rsi
call      qword ptr [7FFF540D4348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       r14,rax
test      r14,r14
jne       near ptr M01_L25
mov       rcx,[rbx+10]
mov       r11,[rcx+20]
test      r11,r11
je        short M01_L05
M01_L02
 
mov       rcx,rsi
call      qword ptr [r11]
mov       [rbp-48],rax
jmp       short M01_L06
M01_L03
 
mov       rcx,rbx
mov       rdx,7FFF54B0C4E8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
jmp       short M01_L00
M01_L04
 
mov       rcx,rbx
mov       rdx,7FFF54B0C4F8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
jmp       short M01_L01
M01_L05
 
mov       rcx,rbx
mov       rdx,7FFF54B0C508
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       short M01_L02
M01_L06
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
jne       short M01_L09
lea       rdi,[rax+8]
mov       ecx,[rdi+8]
mov       rdx,[rdi]
cmp       ecx,[rdx+44]
jne       near ptr M01_L14
M01_L07
 
mov       rax,[rbp-48]
mov       ecx,[rdi+0C]
mov       r14,[rdi]
cmp       ecx,[r14+38]
jae       near ptr M01_L17
mov       rdx,[r14+10]
lea       r8d,[rcx+1]
mov       [rdi+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L08
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L07
mov       rdx,[rcx]
mov       r14,[rcx+8]
lea       rcx,[rdi+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-48]
jmp       short M01_L11
M01_L08
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L09
 
mov       rcx,rax
mov       r11,7FFF53F910F8
call      qword ptr [r11]
mov       ecx,eax
mov       rax,[rbp-48]
M01_L10
 
test      ecx,ecx
je        near ptr M01_L31
M01_L11
 
mov       rcx,[rbx+10]
mov       r11,[rcx+28]
test      r11,r11
je        short M01_L15
M01_L12
 
lea       rdx,[rbp-40]
mov       rcx,rax
call      qword ptr [r11]
cmp       rsi,r15
jne       short M01_L16
mov       rcx,[rbp-48]
lea       rdi,[rcx+8]
mov       edx,[rdi+8]
mov       rax,[rdi]
cmp       edx,[rax+44]
jne       short M01_L14
M01_L13
 
mov       edx,[rdi+0C]
mov       rax,[rdi]
mov       r14d,[rax+38]
cmp       edx,r14d
jb        short M01_L18
inc       r14d
mov       [rdi+0C],r14d
xor       r11d,r11d
mov       [rdi+18],r11
mov       [rdi+20],r11
mov       rcx,[rbp-48]
jmp       near ptr M01_L19
M01_L14
 
call      qword ptr [7FFF54445E00]
int       3
M01_L15
 
mov       rcx,rbx
mov       rdx,7FFF54B0C520
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
mov       rax,[rbp-48]
jmp       short M01_L12
M01_L16
 
mov       rcx,[rbp-48]
mov       r11,7FFF53F91100
call      qword ptr [r11]
test      eax,eax
mov       rax,[rbp-48]
jne       near ptr M01_L11
mov       rcx,rax
jmp       short M01_L19
M01_L17
 
mov       ecx,[r14+38]
inc       ecx
mov       [rdi+0C],ecx
xor       ecx,ecx
mov       [rdi+18],rcx
mov       [rdi+20],rcx
jmp       near ptr M01_L10
M01_L18
 
mov       rax,[rax+10]
lea       r8d,[rdx+1]
mov       [rdi+0C],r8d
cmp       edx,[rax+8]
jae       near ptr M01_L08
mov       edx,edx
lea       rdx,[rdx+rdx*2]
lea       rdx,[rax+rdx*8+10]
cmp       dword ptr [rdx+14],0FFFFFFFF
jl        near ptr M01_L13
mov       rax,[rdx]
mov       r14,[rdx+8]
lea       rcx,[rdi+18]
mov       rdx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-48]
jmp       near ptr M01_L11
M01_L19
 
mov       r8,[rbp+28]
mov       byte ptr [r8],1
mov       rdi,[rbp-40]
mov       r14,[rbp-38]
cmp       rsi,r15
jne       near ptr M01_L30
M01_L20
 
mov       rcx,[rbp+10]
mov       rdx,rdi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rcx,[rbp+10]
lea       rcx,[rcx+8]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L21
 
mov       ecx,10
call      qword ptr [7FFF54447A38]
int       3
M01_L22
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],40
jle       short M01_L23
mov       r11,[rcx+40]
test      r11,r11
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rbx
mov       rdx,7FFF54B0C5F0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L24
 
mov       rcx,rdi
mov       rdx,[rbp+10]
mov       r8,[rbp+28]
call      qword ptr [r11]
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L25
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],30
jle       short M01_L26
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L26
jmp       short M01_L27
M01_L26
 
mov       rcx,rbx
mov       rdx,7FFF54B0C5C0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L27
 
mov       rcx,r14
call      qword ptr [r11]
mov       esi,eax
test      esi,esi
jle       short M01_L32
mov       r8,[rbp+28]
mov       byte ptr [r8],1
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],38
jle       short M01_L28
mov       r11,[rcx+38]
test      r11,r11
je        short M01_L28
jmp       short M01_L29
M01_L28
 
mov       rcx,rbx
mov       rdx,7FFF54B0C5D8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L29
 
lea       r8d,[rsi-1]
mov       rcx,r14
mov       rdx,[rbp+10]
call      qword ptr [r11]
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L30
 
mov       r11,7FFF53F91108
call      qword ptr [r11]
jmp       near ptr M01_L20
M01_L31
 
mov       rcx,rsp
call      M01_L33
nop
M01_L32
 
mov       r8,[rbp+28]
mov       byte ptr [r8],0
xor       eax,eax
mov       rdx,[rbp+10]
mov       [rdx],rax
mov       [rdx+8],rax
mov       rax,rdx
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L33
 
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+70]
cmp       qword ptr [rbp-48],0
je        short M01_L34
mov       rax,[rbp-48]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L34
mov       rcx,[rbp-48]
mov       r11,7FFF53F91108
call      qword ptr [r11]
M01_L34
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF54185B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF54185B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFF54445D58]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,24DE9860008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.UpsertDictionary01()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,48
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
mov       [rsp+40],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
lea       rcx,[rsp+30]
lea       r9,[rsp+40]
mov       r8,rsi
mov       rdx,offset MD_System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>>, Boolean ByRef)
call      qword ptr [7FFF54B4CA68]; System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, Boolean ByRef)
cmp       byte ptr [rsp+40],0
je        near ptr M00_L02
mov       rdi,[rsp+30]
mov       rbp,[rsp+38]
test      rbp,rbp
je        short M00_L01
xor       ecx,ecx
test      rdi,rdi
setne     cl
test      ecx,ecx
je        short M00_L03
test      rsi,rsi
je        near ptr M00_L04
mov       rcx,rsi
mov       rdx,rdi
mov       r11,7FFF53FB0FC0
call      qword ptr [r11]
test      eax,eax
je        short M00_L00
mov       rcx,rsi
mov       rdx,rdi
mov       r11,7FFF53FB0FD0
call      qword ptr [r11]
M00_L00
 
mov       rcx,rsi
mov       r8,rbp
mov       rdx,rdi
mov       r11,7FFF53FB0FC8
call      qword ptr [r11]
M00_L01
 
mov       [rsp+28],rsi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,48
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L02
 
call      qword ptr [7FFF54467A98]
int       3
M00_L03
 
call      qword ptr [7FFF546844C8]
mov       ecx,1B3
mov       rdx,7FFF545FA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54486D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540F6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545FA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540F6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546842B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542E6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L04
 
call      qword ptr [7FFF546844C8]
mov       ecx,43
mov       rdx,7FFF545FA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54486D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540F6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545FA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540F6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546842B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542E6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, Boolean ByRef)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,48
lea       rbp,[rsp+70]
xor       eax,eax
mov       [rbp-40],rax
mov       [rbp-38],rax
mov       [rbp-50],rsp
mov       [rbp-30],rdx
mov       [rbp+10],rcx
mov       [rbp+28],r9
mov       rbx,rdx
mov       rsi,r8
test      rsi,rsi
je        near ptr M01_L21
mov       rcx,[rbx+10]
mov       rcx,[rcx+10]
test      rcx,rcx
je        short M01_L03
M01_L00
 
mov       rdx,rsi
call      qword ptr [7FFF540F4348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       rdi,rax
test      rdi,rdi
jne       near ptr M01_L22
mov       rcx,[rbx+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L04
M01_L01
 
mov       rdx,rsi
call      qword ptr [7FFF540F4348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       r14,rax
test      r14,r14
jne       near ptr M01_L25
mov       rcx,[rbx+10]
mov       r11,[rcx+20]
test      r11,r11
je        short M01_L05
M01_L02
 
mov       rcx,rsi
call      qword ptr [r11]
mov       [rbp-48],rax
jmp       short M01_L06
M01_L03
 
mov       rcx,rbx
mov       rdx,7FFF54B2CAD8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
jmp       short M01_L00
M01_L04
 
mov       rcx,rbx
mov       rdx,7FFF54B2CAE8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
jmp       short M01_L01
M01_L05
 
mov       rcx,rbx
mov       rdx,7FFF54B2CAF8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       short M01_L02
M01_L06
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
jne       short M01_L09
lea       rdi,[rax+8]
mov       ecx,[rdi+8]
mov       rdx,[rdi]
cmp       ecx,[rdx+44]
jne       near ptr M01_L14
M01_L07
 
mov       rax,[rbp-48]
mov       ecx,[rdi+0C]
mov       r14,[rdi]
cmp       ecx,[r14+38]
jae       near ptr M01_L17
mov       rdx,[r14+10]
lea       r8d,[rcx+1]
mov       [rdi+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L08
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L07
mov       rdx,[rcx]
mov       r14,[rcx+8]
lea       rcx,[rdi+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-48]
jmp       short M01_L11
M01_L08
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L09
 
mov       rcx,rax
mov       r11,7FFF53FB0FD8
call      qword ptr [r11]
mov       ecx,eax
mov       rax,[rbp-48]
M01_L10
 
test      ecx,ecx
je        near ptr M01_L31
M01_L11
 
mov       rcx,[rbx+10]
mov       r11,[rcx+28]
test      r11,r11
je        short M01_L15
M01_L12
 
lea       rdx,[rbp-40]
mov       rcx,rax
call      qword ptr [r11]
cmp       rsi,r15
jne       short M01_L16
mov       rcx,[rbp-48]
lea       rdi,[rcx+8]
mov       edx,[rdi+8]
mov       rax,[rdi]
cmp       edx,[rax+44]
jne       short M01_L14
M01_L13
 
mov       edx,[rdi+0C]
mov       rax,[rdi]
mov       r14d,[rax+38]
cmp       edx,r14d
jb        short M01_L18
inc       r14d
mov       [rdi+0C],r14d
xor       r11d,r11d
mov       [rdi+18],r11
mov       [rdi+20],r11
mov       rcx,[rbp-48]
jmp       near ptr M01_L19
M01_L14
 
call      qword ptr [7FFF54465E00]
int       3
M01_L15
 
mov       rcx,rbx
mov       rdx,7FFF54B2CB10
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
mov       rax,[rbp-48]
jmp       short M01_L12
M01_L16
 
mov       rcx,[rbp-48]
mov       r11,7FFF53FB0FE0
call      qword ptr [r11]
test      eax,eax
mov       rax,[rbp-48]
jne       near ptr M01_L11
mov       rcx,rax
jmp       short M01_L19
M01_L17
 
mov       ecx,[r14+38]
inc       ecx
mov       [rdi+0C],ecx
xor       ecx,ecx
mov       [rdi+18],rcx
mov       [rdi+20],rcx
jmp       near ptr M01_L10
M01_L18
 
mov       rax,[rax+10]
lea       r8d,[rdx+1]
mov       [rdi+0C],r8d
cmp       edx,[rax+8]
jae       near ptr M01_L08
mov       edx,edx
lea       rdx,[rdx+rdx*2]
lea       rdx,[rax+rdx*8+10]
cmp       dword ptr [rdx+14],0FFFFFFFF
jl        near ptr M01_L13
mov       rax,[rdx]
mov       r14,[rdx+8]
lea       rcx,[rdi+18]
mov       rdx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-48]
jmp       near ptr M01_L11
M01_L19
 
mov       r8,[rbp+28]
mov       byte ptr [r8],1
mov       rdi,[rbp-40]
mov       r14,[rbp-38]
cmp       rsi,r15
jne       near ptr M01_L30
M01_L20
 
mov       rcx,[rbp+10]
mov       rdx,rdi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rcx,[rbp+10]
lea       rcx,[rcx+8]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L21
 
mov       ecx,10
call      qword ptr [7FFF54467A38]
int       3
M01_L22
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],40
jle       short M01_L23
mov       r11,[rcx+40]
test      r11,r11
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rbx
mov       rdx,7FFF54B2CBE0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L24
 
mov       rcx,rdi
mov       rdx,[rbp+10]
mov       r8,[rbp+28]
call      qword ptr [r11]
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L25
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],30
jle       short M01_L26
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L26
jmp       short M01_L27
M01_L26
 
mov       rcx,rbx
mov       rdx,7FFF54B2CBB0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L27
 
mov       rcx,r14
call      qword ptr [r11]
mov       esi,eax
test      esi,esi
jle       short M01_L32
mov       r8,[rbp+28]
mov       byte ptr [r8],1
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],38
jle       short M01_L28
mov       r11,[rcx+38]
test      r11,r11
je        short M01_L28
jmp       short M01_L29
M01_L28
 
mov       rcx,rbx
mov       rdx,7FFF54B2CBC8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L29
 
lea       r8d,[rsi-1]
mov       rcx,r14
mov       rdx,[rbp+10]
call      qword ptr [r11]
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L30
 
mov       r11,7FFF53FB0FE8
call      qword ptr [r11]
jmp       near ptr M01_L20
M01_L31
 
mov       rcx,rsp
call      M01_L33
nop
M01_L32
 
mov       r8,[rbp+28]
mov       byte ptr [r8],0
xor       eax,eax
mov       rdx,[rbp+10]
mov       [rdx],rax
mov       [rdx+8],rax
mov       rax,rdx
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L33
 
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+70]
cmp       qword ptr [rbp-48],0
je        short M01_L34
mov       rax,[rbp-48]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L34
mov       rcx,rax
mov       r11,7FFF53FB0FE8
call      qword ptr [r11]
M01_L34
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF541A5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF541A5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFF54465D58]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,1CC79C60008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.UpsertDictionary01()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,48
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
mov       [rsp+40],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
lea       rcx,[rsp+30]
lea       r9,[rsp+40]
mov       r8,rsi
mov       rdx,offset MD_System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>>, Boolean ByRef)
call      qword ptr [7FFF54B94738]; System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, Boolean ByRef)
cmp       byte ptr [rsp+40],0
je        near ptr M00_L02
mov       rdi,[rsp+30]
mov       rbp,[rsp+38]
test      rbp,rbp
je        short M00_L01
xor       ecx,ecx
test      rdi,rdi
setne     cl
test      ecx,ecx
je        short M00_L03
test      rsi,rsi
je        near ptr M00_L04
mov       rcx,rsi
mov       rdx,rdi
mov       r11,7FFF53F91278
call      qword ptr [r11]
test      eax,eax
je        short M00_L00
mov       rcx,rsi
mov       rdx,rdi
mov       r11,7FFF53F91288
call      qword ptr [r11]
M00_L00
 
mov       rcx,rsi
mov       r8,rbp
mov       rdx,rdi
mov       r11,7FFF53F91280
call      qword ptr [r11]
M00_L01
 
mov       [rsp+28],rsi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,48
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L02
 
call      qword ptr [7FFF54447A98]
int       3
M00_L03
 
call      qword ptr [7FFF546644C8]
mov       ecx,1B3
mov       rdx,7FFF545DA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54466D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540D6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545DA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540D6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546642B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542C6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L04
 
call      qword ptr [7FFF546644C8]
mov       ecx,43
mov       rdx,7FFF545DA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54466D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540D6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545DA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540D6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546642B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542C6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, Boolean ByRef)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,48
lea       rbp,[rsp+70]
xor       eax,eax
mov       [rbp-40],rax
mov       [rbp-38],rax
mov       [rbp-50],rsp
mov       [rbp-30],rdx
mov       [rbp+10],rcx
mov       [rbp+28],r9
mov       rbx,rdx
mov       rsi,r8
test      rsi,rsi
je        near ptr M01_L21
mov       rcx,[rbx+10]
mov       rcx,[rcx+10]
test      rcx,rcx
je        short M01_L03
M01_L00
 
mov       rdx,rsi
call      qword ptr [7FFF540D4348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       rdi,rax
test      rdi,rdi
jne       near ptr M01_L22
mov       rcx,[rbx+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L04
M01_L01
 
mov       rdx,rsi
call      qword ptr [7FFF540D4348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       r14,rax
test      r14,r14
jne       near ptr M01_L25
mov       rcx,[rbx+10]
mov       r11,[rcx+20]
test      r11,r11
je        short M01_L05
M01_L02
 
mov       rcx,rsi
call      qword ptr [r11]
mov       [rbp-48],rax
jmp       short M01_L06
M01_L03
 
mov       rcx,rbx
mov       rdx,7FFF54B7BB28
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
jmp       short M01_L00
M01_L04
 
mov       rcx,rbx
mov       rdx,7FFF54B7BB38
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
jmp       short M01_L01
M01_L05
 
mov       rcx,rbx
mov       rdx,7FFF54B7BB48
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       short M01_L02
M01_L06
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
jne       short M01_L09
lea       rdi,[rax+8]
mov       ecx,[rdi+8]
mov       rdx,[rdi]
cmp       ecx,[rdx+44]
jne       near ptr M01_L14
M01_L07
 
mov       rax,[rbp-48]
mov       ecx,[rdi+0C]
mov       r14,[rdi]
cmp       ecx,[r14+38]
jae       near ptr M01_L17
mov       rdx,[r14+10]
lea       r8d,[rcx+1]
mov       [rdi+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L08
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L07
mov       rdx,[rcx]
mov       r14,[rcx+8]
lea       rcx,[rdi+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-48]
jmp       short M01_L11
M01_L08
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L09
 
mov       rcx,rax
mov       r11,7FFF53F91290
call      qword ptr [r11]
mov       ecx,eax
mov       rax,[rbp-48]
M01_L10
 
test      ecx,ecx
je        near ptr M01_L31
M01_L11
 
mov       rcx,[rbx+10]
mov       r11,[rcx+28]
test      r11,r11
je        short M01_L15
M01_L12
 
lea       rdx,[rbp-40]
mov       rcx,rax
call      qword ptr [r11]
cmp       rsi,r15
jne       short M01_L16
mov       rcx,[rbp-48]
lea       rdi,[rcx+8]
mov       edx,[rdi+8]
mov       rax,[rdi]
cmp       edx,[rax+44]
jne       short M01_L14
M01_L13
 
mov       edx,[rdi+0C]
mov       rax,[rdi]
mov       r14d,[rax+38]
cmp       edx,r14d
jb        short M01_L18
inc       r14d
mov       [rdi+0C],r14d
xor       r11d,r11d
mov       [rdi+18],r11
mov       [rdi+20],r11
mov       rcx,[rbp-48]
jmp       near ptr M01_L19
M01_L14
 
call      qword ptr [7FFF54445E00]
int       3
M01_L15
 
mov       rcx,rbx
mov       rdx,7FFF54B7BB60
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
mov       rax,[rbp-48]
jmp       short M01_L12
M01_L16
 
mov       rcx,[rbp-48]
mov       r11,7FFF53F91298
call      qword ptr [r11]
test      eax,eax
mov       rax,[rbp-48]
jne       near ptr M01_L11
mov       rcx,rax
jmp       short M01_L19
M01_L17
 
mov       ecx,[r14+38]
inc       ecx
mov       [rdi+0C],ecx
xor       ecx,ecx
mov       [rdi+18],rcx
mov       [rdi+20],rcx
jmp       near ptr M01_L10
M01_L18
 
mov       rax,[rax+10]
lea       r8d,[rdx+1]
mov       [rdi+0C],r8d
cmp       edx,[rax+8]
jae       near ptr M01_L08
mov       edx,edx
lea       rdx,[rdx+rdx*2]
lea       rdx,[rax+rdx*8+10]
cmp       dword ptr [rdx+14],0FFFFFFFF
jl        near ptr M01_L13
mov       rax,[rdx]
mov       r14,[rdx+8]
lea       rcx,[rdi+18]
mov       rdx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-48]
jmp       near ptr M01_L11
M01_L19
 
mov       r8,[rbp+28]
mov       byte ptr [r8],1
mov       rdi,[rbp-40]
mov       r14,[rbp-38]
cmp       rsi,r15
jne       near ptr M01_L30
M01_L20
 
mov       rcx,[rbp+10]
mov       rdx,rdi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rcx,[rbp+10]
lea       rcx,[rcx+8]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L21
 
mov       ecx,10
call      qword ptr [7FFF54447A38]
int       3
M01_L22
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],40
jle       short M01_L23
mov       r11,[rcx+40]
test      r11,r11
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rbx
mov       rdx,7FFF54B7BC30
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L24
 
mov       rcx,rdi
mov       rdx,[rbp+10]
mov       r8,[rbp+28]
call      qword ptr [r11]
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L25
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],30
jle       short M01_L26
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L26
jmp       short M01_L27
M01_L26
 
mov       rcx,rbx
mov       rdx,7FFF54B7BC00
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L27
 
mov       rcx,r14
call      qword ptr [r11]
mov       esi,eax
test      esi,esi
jle       short M01_L32
mov       r8,[rbp+28]
mov       byte ptr [r8],1
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],38
jle       short M01_L28
mov       r11,[rcx+38]
test      r11,r11
je        short M01_L28
jmp       short M01_L29
M01_L28
 
mov       rcx,rbx
mov       rdx,7FFF54B7BC18
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L29
 
lea       r8d,[rsi-1]
mov       rcx,r14
mov       rdx,[rbp+10]
call      qword ptr [r11]
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L30
 
mov       r11,7FFF53F912A0
call      qword ptr [r11]
jmp       near ptr M01_L20
M01_L31
 
mov       rcx,rsp
call      M01_L33
nop
M01_L32
 
mov       r8,[rbp+28]
mov       byte ptr [r8],0
xor       eax,eax
mov       rdx,[rbp+10]
mov       [rdx],rax
mov       [rdx+8],rax
mov       rax,rdx
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L33
 
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+70]
cmp       qword ptr [rbp-48],0
je        short M01_L34
mov       rax,[rbp-48]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L34
mov       rcx,[rbp-48]
mov       r11,7FFF53F912A0
call      qword ptr [r11]
M01_L34
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF54185B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF54185B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFF54445D58]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,23E9B720008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.UpsertDictionary01()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,48
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
mov       [rsp+40],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
lea       rcx,[rsp+30]
lea       r9,[rsp+40]
mov       r8,rsi
mov       rdx,offset MD_System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>>, Boolean ByRef)
call      qword ptr [7FFF54C275D0]; System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, Boolean ByRef)
cmp       byte ptr [rsp+40],0
je        near ptr M00_L02
mov       rdi,[rsp+30]
mov       rbp,[rsp+38]
test      rbp,rbp
je        short M00_L01
xor       ecx,ecx
test      rdi,rdi
setne     cl
test      ecx,ecx
je        short M00_L03
test      rsi,rsi
je        near ptr M00_L04
mov       rcx,rsi
mov       rdx,rdi
mov       r11,7FFF53F919A0
call      qword ptr [r11]
test      eax,eax
je        short M00_L00
mov       rcx,rsi
mov       rdx,rdi
mov       r11,7FFF53F919B0
call      qword ptr [r11]
M00_L00
 
mov       rcx,rsi
mov       r8,rbp
mov       rdx,rdi
mov       r11,7FFF53F919A8
call      qword ptr [r11]
M00_L01
 
mov       [rsp+28],rsi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,48
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L02
 
call      qword ptr [7FFF54447A98]
int       3
M00_L03
 
call      qword ptr [7FFF546644C8]
mov       ecx,1B3
mov       rdx,7FFF545DA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54466D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540D6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545DA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540D6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546642B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542C6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L04
 
call      qword ptr [7FFF546644C8]
mov       ecx,43
mov       rdx,7FFF545DA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54466D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540D6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545DA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540D6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546642B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542C6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, Boolean ByRef)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,48
lea       rbp,[rsp+70]
xor       eax,eax
mov       [rbp-40],rax
mov       [rbp-38],rax
mov       [rbp-50],rsp
mov       [rbp-30],rdx
mov       [rbp+10],rcx
mov       [rbp+28],r9
mov       rbx,rdx
mov       rsi,r8
test      rsi,rsi
je        near ptr M01_L22
mov       rcx,[rbx+10]
mov       rcx,[rcx+10]
test      rcx,rcx
je        short M01_L03
M01_L00
 
mov       rdx,rsi
call      qword ptr [7FFF540D4348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       rdi,rax
test      rdi,rdi
jne       near ptr M01_L23
mov       rcx,[rbx+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L04
M01_L01
 
mov       rdx,rsi
call      qword ptr [7FFF540D4348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       r14,rax
test      r14,r14
jne       near ptr M01_L26
mov       rcx,[rbx+10]
mov       r11,[rcx+20]
test      r11,r11
je        short M01_L05
M01_L02
 
mov       rcx,rsi
call      qword ptr [r11]
mov       [rbp-48],rax
jmp       short M01_L06
M01_L03
 
mov       rcx,rbx
mov       rdx,7FFF54C378E0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
jmp       short M01_L00
M01_L04
 
mov       rcx,rbx
mov       rdx,7FFF54C378F0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
jmp       short M01_L01
M01_L05
 
mov       rcx,rbx
mov       rdx,7FFF54C37900
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       short M01_L02
M01_L06
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
jne       short M01_L09
lea       rdi,[rax+8]
mov       ecx,[rdi+8]
mov       rdx,[rdi]
cmp       ecx,[rdx+44]
jne       near ptr M01_L19
M01_L07
 
mov       rax,[rbp-48]
mov       ecx,[rdi+0C]
mov       r14,[rdi]
cmp       ecx,[r14+38]
jae       near ptr M01_L18
mov       rdx,[r14+10]
lea       r8d,[rcx+1]
mov       [rdi+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L08
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L07
mov       rdx,[rcx]
mov       r14,[rcx+8]
lea       rcx,[rdi+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-48]
jmp       short M01_L11
M01_L08
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L09
 
mov       rcx,rax
mov       r11,7FFF53F919B8
call      qword ptr [r11]
mov       ecx,eax
mov       rax,[rbp-48]
M01_L10
 
test      ecx,ecx
je        near ptr M01_L32
M01_L11
 
mov       rcx,[rbx+10]
mov       r11,[rcx+28]
test      r11,r11
je        near ptr M01_L17
M01_L12
 
lea       rdx,[rbp-40]
mov       rcx,rax
call      qword ptr [r11]
cmp       rsi,r15
jne       short M01_L14
mov       rcx,[rbp-48]
lea       rdi,[rcx+8]
mov       edx,[rdi+8]
mov       rax,[rdi]
cmp       edx,[rax+44]
jne       near ptr M01_L19
M01_L13
 
mov       edx,[rdi+0C]
mov       r14,[rdi]
cmp       edx,[r14+38]
jae       short M01_L15
mov       rax,[r14+10]
lea       r8d,[rdx+1]
mov       [rdi+0C],r8d
cmp       edx,[rax+8]
jae       short M01_L08
mov       edx,edx
lea       rdx,[rdx+rdx*2]
lea       rdx,[rax+rdx*8+10]
cmp       dword ptr [rdx+14],0FFFFFFFF
jl        short M01_L13
mov       rax,[rdx]
mov       r14,[rdx+8]
lea       rcx,[rdi+18]
mov       rdx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-48]
jmp       near ptr M01_L11
M01_L14
 
mov       rcx,[rbp-48]
mov       r11,7FFF53F919C0
call      qword ptr [r11]
test      eax,eax
mov       rax,[rbp-48]
jne       near ptr M01_L11
mov       rcx,rax
jmp       short M01_L16
M01_L15
 
mov       r11d,[r14+38]
inc       r11d
mov       [rdi+0C],r11d
xor       r11d,r11d
mov       [rdi+18],r11
mov       [rdi+20],r11
mov       rcx,[rbp-48]
M01_L16
 
mov       r8,[rbp+28]
mov       byte ptr [r8],1
mov       rdi,[rbp-40]
mov       r14,[rbp-38]
jmp       short M01_L20
M01_L17
 
mov       rcx,rbx
mov       rdx,7FFF54C37948
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
mov       rax,[rbp-48]
jmp       near ptr M01_L12
M01_L18
 
mov       ecx,[r14+38]
inc       ecx
mov       [rdi+0C],ecx
xor       ecx,ecx
mov       [rdi+18],rcx
mov       [rdi+20],rcx
jmp       near ptr M01_L10
M01_L19
 
call      qword ptr [7FFF54445E00]
int       3
M01_L20
 
cmp       rsi,r15
jne       near ptr M01_L31
M01_L21
 
mov       rcx,[rbp+10]
mov       rdx,rdi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rcx,[rbp+10]
lea       rcx,[rcx+8]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L22
 
mov       ecx,10
call      qword ptr [7FFF54447A38]
int       3
M01_L23
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],40
jle       short M01_L24
mov       r11,[rcx+40]
test      r11,r11
je        short M01_L24
jmp       short M01_L25
M01_L24
 
mov       rcx,rbx
mov       rdx,7FFF54C37A18
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L25
 
mov       rcx,rdi
mov       rdx,[rbp+10]
mov       r8,[rbp+28]
call      qword ptr [r11]
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L26
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],30
jle       short M01_L27
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L27
jmp       short M01_L28
M01_L27
 
mov       rcx,rbx
mov       rdx,7FFF54C379E8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L28
 
mov       rcx,r14
call      qword ptr [r11]
mov       esi,eax
test      esi,esi
jle       short M01_L33
mov       r8,[rbp+28]
mov       byte ptr [r8],1
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],38
jle       short M01_L29
mov       r11,[rcx+38]
test      r11,r11
je        short M01_L29
jmp       short M01_L30
M01_L29
 
mov       rcx,rbx
mov       rdx,7FFF54C37A00
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L30
 
lea       r8d,[rsi-1]
mov       rcx,r14
mov       rdx,[rbp+10]
call      qword ptr [r11]
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L31
 
mov       r11,7FFF53F919C8
call      qword ptr [r11]
jmp       near ptr M01_L21
M01_L32
 
mov       rcx,rsp
call      M01_L34
nop
M01_L33
 
mov       r8,[rbp+28]
mov       byte ptr [r8],0
xor       eax,eax
mov       rdx,[rbp+10]
mov       [rdx],rax
mov       [rdx+8],rax
mov       rax,rdx
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L34
 
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+70]
cmp       qword ptr [rbp-48],0
je        short M01_L35
mov       rax,[rbp-48]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L35
mov       rcx,rax
mov       r11,7FFF53F919C8
call      qword ptr [r11]
M01_L35
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF54185B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF54185B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFF54445D58]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,1CAF5A80008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.13 (8.0.1325.6609), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.UpsertDictionary01()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,48
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
mov       [rsp+40],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
lea       rcx,[rsp+30]
lea       r9,[rsp+40]
mov       r8,rsi
mov       rdx,offset MD_System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>>, Boolean ByRef)
call      qword ptr [7FFF54D55A88]; System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, Boolean ByRef)
cmp       byte ptr [rsp+40],0
je        near ptr M00_L02
mov       rdi,[rsp+30]
mov       rbp,[rsp+38]
test      rbp,rbp
je        short M00_L01
xor       ecx,ecx
test      rdi,rdi
setne     cl
test      ecx,ecx
je        short M00_L03
test      rsi,rsi
je        near ptr M00_L04
mov       rcx,rsi
mov       rdx,rdi
mov       r11,7FFF53FA1BF8
call      qword ptr [r11]
test      eax,eax
je        short M00_L00
mov       rcx,rsi
mov       rdx,rdi
mov       r11,7FFF53FA1C08
call      qword ptr [r11]
M00_L00
 
mov       rcx,rsi
mov       r8,rbp
mov       rdx,rdi
mov       r11,7FFF53FA1C00
call      qword ptr [r11]
M00_L01
 
mov       [rsp+28],rsi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,48
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L02
 
call      qword ptr [7FFF54457A98]
int       3
M00_L03
 
call      qword ptr [7FFF546744C8]
mov       ecx,1B3
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54476D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546742B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542D6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L04
 
call      qword ptr [7FFF546744C8]
mov       ecx,43
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1436
mov       rdx,7FFF54476D58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFF545EA408
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFF540E6B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFF546742B8]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFF542D6718]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, Boolean ByRef)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,48
lea       rbp,[rsp+70]
xor       eax,eax
mov       [rbp-40],rax
mov       [rbp-38],rax
mov       [rbp-50],rsp
mov       [rbp-30],rdx
mov       [rbp+10],rcx
mov       [rbp+28],r9
mov       rbx,rdx
mov       rsi,r8
test      rsi,rsi
je        near ptr M01_L22
mov       rcx,[rbx+10]
mov       rcx,[rcx+10]
test      rcx,rcx
je        short M01_L03
M01_L00
 
mov       rdx,rsi
call      qword ptr [7FFF540E4348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       rdi,rax
test      rdi,rdi
jne       near ptr M01_L23
mov       rcx,[rbx+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L04
M01_L01
 
mov       rdx,rsi
call      qword ptr [7FFF540E4348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       r14,rax
test      r14,r14
jne       near ptr M01_L26
mov       rcx,[rbx+10]
mov       r11,[rcx+20]
test      r11,r11
je        short M01_L05
M01_L02
 
mov       rcx,rsi
call      qword ptr [r11]
mov       [rbp-48],rax
jmp       short M01_L06
M01_L03
 
mov       rcx,rbx
mov       rdx,7FFF54D74478
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
jmp       short M01_L00
M01_L04
 
mov       rcx,rbx
mov       rdx,7FFF54D74488
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
jmp       short M01_L01
M01_L05
 
mov       rcx,rbx
mov       rdx,7FFF54D74498
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       short M01_L02
M01_L06
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
jne       short M01_L09
lea       rdi,[rax+8]
mov       ecx,[rdi+8]
mov       rdx,[rdi]
cmp       ecx,[rdx+44]
jne       near ptr M01_L19
M01_L07
 
mov       rax,[rbp-48]
mov       ecx,[rdi+0C]
mov       r14,[rdi]
cmp       ecx,[r14+38]
jae       near ptr M01_L18
mov       rdx,[r14+10]
lea       r8d,[rcx+1]
mov       [rdi+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L08
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L07
mov       rdx,[rcx]
mov       r14,[rcx+8]
lea       rcx,[rdi+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-48]
jmp       short M01_L11
M01_L08
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L09
 
mov       rcx,rax
mov       r11,7FFF53FA1BE0
call      qword ptr [r11]
mov       ecx,eax
mov       rax,[rbp-48]
M01_L10
 
test      ecx,ecx
je        near ptr M01_L32
M01_L11
 
mov       rcx,[rbx+10]
mov       r11,[rcx+28]
test      r11,r11
je        near ptr M01_L17
M01_L12
 
lea       rdx,[rbp-40]
mov       rcx,rax
call      qword ptr [r11]
cmp       rsi,r15
jne       short M01_L14
mov       rcx,[rbp-48]
lea       rdi,[rcx+8]
mov       edx,[rdi+8]
mov       rax,[rdi]
cmp       edx,[rax+44]
jne       near ptr M01_L19
M01_L13
 
mov       edx,[rdi+0C]
mov       r14,[rdi]
cmp       edx,[r14+38]
jae       short M01_L15
mov       rax,[r14+10]
lea       r8d,[rdx+1]
mov       [rdi+0C],r8d
cmp       edx,[rax+8]
jae       short M01_L08
mov       edx,edx
lea       rdx,[rdx+rdx*2]
lea       rdx,[rax+rdx*8+10]
cmp       dword ptr [rdx+14],0FFFFFFFF
jl        short M01_L13
mov       rax,[rdx]
mov       r14,[rdx+8]
lea       rcx,[rdi+18]
mov       rdx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-48]
jmp       near ptr M01_L11
M01_L14
 
mov       rcx,[rbp-48]
mov       r11,7FFF53FA1BE8
call      qword ptr [r11]
test      eax,eax
mov       rax,[rbp-48]
jne       near ptr M01_L11
mov       rcx,rax
jmp       short M01_L16
M01_L15
 
mov       r11d,[r14+38]
inc       r11d
mov       [rdi+0C],r11d
xor       r11d,r11d
mov       [rdi+18],r11
mov       [rdi+20],r11
mov       rcx,[rbp-48]
M01_L16
 
mov       r8,[rbp+28]
mov       byte ptr [r8],1
mov       rdi,[rbp-40]
mov       r14,[rbp-38]
jmp       short M01_L20
M01_L17
 
mov       rcx,rbx
mov       rdx,7FFF54D744B0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
mov       rax,[rbp-48]
jmp       near ptr M01_L12
M01_L18
 
mov       ecx,[r14+38]
inc       ecx
mov       [rdi+0C],ecx
xor       ecx,ecx
mov       [rdi+18],rcx
mov       [rdi+20],rcx
jmp       near ptr M01_L10
M01_L19
 
call      qword ptr [7FFF54455E00]
int       3
M01_L20
 
cmp       rsi,r15
jne       near ptr M01_L31
M01_L21
 
mov       rcx,[rbp+10]
mov       rdx,rdi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rcx,[rbp+10]
lea       rcx,[rcx+8]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L22
 
mov       ecx,10
call      qword ptr [7FFF54457A38]
int       3
M01_L23
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],40
jle       short M01_L24
mov       r11,[rcx+40]
test      r11,r11
je        short M01_L24
jmp       short M01_L25
M01_L24
 
mov       rcx,rbx
mov       rdx,7FFF54D74580
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L25
 
mov       rcx,rdi
mov       rdx,[rbp+10]
mov       r8,[rbp+28]
call      qword ptr [r11]
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L26
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],30
jle       short M01_L27
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L27
jmp       short M01_L28
M01_L27
 
mov       rcx,rbx
mov       rdx,7FFF54D74550
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L28
 
mov       rcx,r14
call      qword ptr [r11]
mov       esi,eax
test      esi,esi
jle       short M01_L33
mov       r8,[rbp+28]
mov       byte ptr [r8],1
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],38
jle       short M01_L29
mov       r11,[rcx+38]
test      r11,r11
je        short M01_L29
jmp       short M01_L30
M01_L29
 
mov       rcx,rbx
mov       rdx,7FFF54D74568
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L30
 
lea       r8d,[rsi-1]
mov       rcx,r14
mov       rdx,[rbp+10]
call      qword ptr [r11]
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L31
 
mov       r11,7FFF53FA1BF0
call      qword ptr [r11]
jmp       near ptr M01_L21
M01_L32
 
mov       rcx,rsp
call      M01_L34
nop
M01_L33
 
mov       r8,[rbp+28]
mov       byte ptr [r8],0
xor       eax,eax
mov       rdx,[rbp+10]
mov       [rdx],rax
mov       [rdx+8],rax
mov       rax,rdx
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L34
 
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+70]
cmp       qword ptr [rbp-48],0
je        short M01_L35
mov       rax,[rbp-48]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L35
mov       rcx,rax
mov       r11,7FFF53FA1BF0
call      qword ptr [r11]
M01_L35
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFF54195B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFF54195B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFF54455D58]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,1F1E75E0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret